annotate variant_effect_predictor/Bio/Ontology/Term.pm @ 3:d30fa12e4cc5 default tip

Merge heads 2:a5976b2dce6f and 1:09613ce8151e which were created as a result of a recently fixed bug.
author devteam <devteam@galaxyproject.org>
date Mon, 13 Jan 2014 10:38:30 -0500
parents 1f6dce3d34e0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
1 # $Id: Term.pm,v 1.8.2.3 2003/05/27 22:00:52 lapp Exp $
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
2 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
3 # BioPerl module for Bio::Ontology::Term
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
4 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
5 # Cared for by Christian M. Zmasek <czmasek@gnf.org> or <cmzmasek@yahoo.com>
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
6 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
7 # (c) Christian M. Zmasek, czmasek@gnf.org, 2002.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
8 # (c) GNF, Genomics Institute of the Novartis Research Foundation, 2002.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
9 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
10 # You may distribute this module under the same terms as perl itself.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
11 # Refer to the Perl Artistic License (see the license accompanying this
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
12 # software package, or see http://www.perl.com/language/misc/Artistic.html)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
13 # for the terms under which you may use, modify, and redistribute this module.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
14 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
15 # THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
16 # WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
17 # MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
18 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
19 # You may distribute this module under the same terms as perl itself
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
20
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
21 # POD documentation - main docs before the code
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
22
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
23
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
24 =head1 NAME
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
25
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
26 Term - interface for ontology terms
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
27
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
28 =head1 SYNOPSIS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
29
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
30 #get Bio::Ontology::TermI somehow.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
31
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
32 print $term->identifier(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
33 print $term->name(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
34 print $term->definition(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
35 print $term->is_obsolete(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
36 print $term->comment(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
37
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
38 foreach my $synonym ( $term->each_synonym() ) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
39 print $synonym, "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
40 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
41
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
42 =head1 DESCRIPTION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
43
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
44 This is "dumb" interface for ontology terms providing basic methods
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
45 (it provides no functionality related to graphs). It implements the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
46 L<Bio::Ontology::TermI> interface.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
47
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
48 This class also implements L<Bio::IdentifiableI> and
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
49 L<Bio::DescribableI>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
50
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
51 =head1 FEEDBACK
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
52
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
53 =head2 Mailing Lists
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
54
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
55 User feedback is an integral part of the evolution of this and other
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
56 Bioperl modules. Send your comments and suggestions preferably to one
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
57 of the Bioperl mailing lists. Your participation is much appreciated.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
58
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
59 bioperl-l@bioperl.org - General discussion
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
60 http://bio.perl.org/MailList.html - About the mailing lists
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
61
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
62 =head2 Reporting Bugs
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
63
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
64 Report bugs to the Bioperl bug tracking system to help us keep track
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
65 the bugs and their resolution. Bug reports can be submitted via email
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
66 or the web:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
67
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
68 bioperl-bugs@bio.perl.org
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
69 http://bugzilla.bioperl.org/
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
70
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
71 =head1 AUTHOR
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
72
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
73 Christian M. Zmasek
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
74
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
75 Email: czmasek@gnf.org or cmzmasek@yahoo.com
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
76
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
77 WWW: http://www.genetics.wustl.edu/eddy/people/zmasek/
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
78
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
79 Address:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
80
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
81 Genomics Institute of the Novartis Research Foundation
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
82 10675 John Jay Hopkins Drive
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
83 San Diego, CA 92121
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
84
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
85 =head1 APPENDIX
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
86
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
87 The rest of the documentation details each of the object
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
88 methods.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
89
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
90 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
91
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
92
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
93 # Let the code begin...
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
94
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
95 package Bio::Ontology::Term;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
96 use vars qw( @ISA );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
97 use strict;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
98 use Bio::Root::Object;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
99 use Bio::Ontology::TermI;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
100 use Bio::Ontology::Ontology;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
101 use Bio::Ontology::OntologyStore;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
102 use Bio::IdentifiableI;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
103 use Bio::DescribableI;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
104
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
105 use constant TRUE => 1;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
106 use constant FALSE => 0;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
107
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
108 @ISA = qw( Bio::Root::Root
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
109 Bio::Ontology::TermI
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
110 Bio::IdentifiableI
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
111 Bio::DescribableI
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
112 );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
113
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
114
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
115
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
116 =head2 new
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
117
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
118 Title : new
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
119 Usage : $term = Bio::Ontology::Term->new( -identifier => "16847",
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
120 -name => "1-aminocyclopropane-1-carboxylate synthase",
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
121 -definition => "Catalysis of ...",
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
122 -is_obsolete => 0,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
123 -comment => "" );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
124 Function: Creates a new Bio::Ontology::Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
125 Returns : A new Bio::Ontology::Term object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
126 Args : -identifier => the identifier of this term [scalar]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
127 -name => the name of this term [scalar]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
128 -definition => the definition of this term [scalar]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
129 -ontology => the ontology this term lives in
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
130 (a L<Bio::Ontology::OntologyI> object)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
131 -version => version information [scalar]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
132 -is_obsolete => the obsoleteness of this term [0 or 1]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
133 -comment => a comment [scalar]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
134
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
135 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
136
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
137 sub new {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
138
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
139 my( $class,@args ) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
140
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
141 my $self = $class->SUPER::new( @args );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
142
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
143 my ( $identifier,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
144 $name,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
145 $definition,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
146 $category,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
147 $ont,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
148 $version,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
149 $is_obsolete,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
150 $comment,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
151 $dblinks)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
152 = $self->_rearrange( [ qw( IDENTIFIER
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
153 NAME
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
154 DEFINITION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
155 CATEGORY
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
156 ONTOLOGY
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
157 VERSION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
158 IS_OBSOLETE
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
159 COMMENT
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
160 DBLINKS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
161 ) ], @args );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
162
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
163 $self->init();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
164
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
165 $identifier && $self->identifier( $identifier );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
166 $name && $self->name( $name );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
167 $definition && $self->definition( $definition );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
168 $category && $self->category( $category );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
169 $ont && $self->ontology( $ont );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
170 defined($version) && $self->version( $version );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
171 defined($is_obsolete) && $self->is_obsolete( $is_obsolete );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
172 $comment && $self->comment( $comment );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
173 ref($dblinks) && $self->add_dblink(@$dblinks);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
174
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
175 return $self;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
176
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
177 } # new
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
178
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
179
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
180
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
181 sub init {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
182
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
183 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
184
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
185 $self->identifier(undef);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
186 $self->name(undef);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
187 $self->comment(undef);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
188 $self->definition(undef);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
189 $self->ontology(undef);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
190 $self->is_obsolete(0);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
191 $self->remove_synonyms();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
192 $self->remove_dblinks();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
193 $self->remove_secondary_ids();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
194
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
195 } # init
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
196
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
197
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
198
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
199 =head2 identifier
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
200
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
201 Title : identifier
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
202 Usage : $term->identifier( "0003947" );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
203 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
204 print $term->identifier();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
205 Function: Set/get for the identifier of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
206 Returns : The identifier [scalar].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
207 Args : The identifier [scalar] (optional).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
208
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
209 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
210
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
211 sub identifier {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
212 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
213
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
214 return $self->{'identifier'} = shift if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
215 return $self->{'identifier'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
216 } # identifier
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
217
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
218
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
219
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
220
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
221 =head2 name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
222
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
223 Title : name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
224 Usage : $term->name( "N-acetylgalactosaminyltransferase" );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
225 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
226 print $term->name();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
227 Function: Set/get for the name of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
228 Returns : The name [scalar].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
229 Args : The name [scalar] (optional).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
230
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
231 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
232
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
233 sub name {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
234 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
235
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
236 return $self->{'name'} = shift if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
237 return $self->{'name'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
238 } # name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
239
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
240
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
241
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
242
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
243
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
244 =head2 definition
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
245
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
246 Title : definition
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
247 Usage : $term->definition( "Catalysis of ..." );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
248 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
249 print $term->definition();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
250 Function: Set/get for the definition of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
251 Returns : The definition [scalar].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
252 Args : The definition [scalar] (optional).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
253
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
254 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
255
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
256 sub definition {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
257 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
258
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
259 return $self->{'definition'} = shift if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
260 return $self->{'definition'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
261 } # definition
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
262
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
263
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
264 =head2 ontology
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
265
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
266 Title : ontology
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
267 Usage : $ont = $term->ontology();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
268 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
269 $term->ontology( $ont );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
270 Function: Get the ontology this term is in.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
271
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
272 Note that with the ontology in hand you can query for all
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
273 related terms etc. See L<Bio::Ontology::OntologyI>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
274
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
275 Returns : The ontology of this Term as a L<Bio::Ontology::OntologyI>
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
276 implementing object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
277 Args : On set, the ontology of this Term as a L<Bio::Ontology::OntologyI>
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
278 implementing object or a string representing its name.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
279
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
280 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
281
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
282 sub ontology {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
283 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
284 my $ont;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
285
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
286 if(@_) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
287 $ont = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
288 if($ont) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
289 $ont = Bio::Ontology::Ontology->new(-name => $ont) if ! ref($ont);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
290 if(! $ont->isa("Bio::Ontology::OntologyI")) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
291 $self->throw(ref($ont)." does not implement ".
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
292 "Bio::Ontology::OntologyI. Bummer.");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
293 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
294 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
295 return $self->{"_ontology"} = $ont;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
296 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
297 return $self->{"_ontology"};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
298 } # ontology
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
299
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
300
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
301 =head2 version
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
302
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
303 Title : version
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
304 Usage : $term->version( "1.00" );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
305 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
306 print $term->version();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
307 Function: Set/get for version information.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
308 Returns : The version [scalar].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
309 Args : The version [scalar] (optional).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
310
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
311 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
312
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
313 sub version {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
314 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
315
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
316 return $self->{'version'} = shift if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
317 return $self->{'version'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
318 } # version
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
319
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
320
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
321
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
322 =head2 is_obsolete
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
323
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
324 Title : is_obsolete
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
325 Usage : $term->is_obsolete( 1 );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
326 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
327 if ( $term->is_obsolete() )
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
328 Function: Set/get for the obsoleteness of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
329 Returns : the obsoleteness [0 or 1].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
330 Args : the obsoleteness [0 or 1] (optional).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
331
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
332 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
333
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
334 sub is_obsolete{
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
335 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
336
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
337 return $self->{'is_obsolete'} = shift if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
338 return $self->{'is_obsolete'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
339 } # is_obsolete
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
340
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
341
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
342
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
343
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
344
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
345 =head2 comment
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
346
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
347 Title : comment
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
348 Usage : $term->comment( "Consider the term ..." );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
349 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
350 print $term->comment();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
351 Function: Set/get for an arbitrary comment about this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
352 Returns : A comment.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
353 Args : A comment (optional).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
354
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
355 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
356
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
357 sub comment{
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
358 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
359
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
360 return $self->{'comment'} = shift if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
361 return $self->{'comment'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
362 } # comment
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
363
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
364
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
365
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
366
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
367 =head2 get_synonyms
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
368
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
369 Title : get_synonyms
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
370 Usage : @aliases = $term->get_synonyms;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
371 Function: Returns a list of aliases of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
372 Returns : A list of aliases [array of [scalar]].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
373 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
374
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
375 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
376
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
377 sub get_synonyms {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
378 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
379
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
380 return @{ $self->{ "_synonyms" } } if exists($self->{ "_synonyms" });
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
381 return ();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
382 } # get_synonyms
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
383
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
384
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
385 =head2 add_synonym
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
386
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
387 Title : add_synonym
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
388 Usage : $term->add_synonym( @asynonyms );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
389 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
390 $term->add_synonym( $synonym );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
391 Function: Pushes one or more synonyms into the list of synonyms.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
392 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
393 Args : One synonym [scalar] or a list of synonyms [array of [scalar]].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
394
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
395 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
396
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
397 sub add_synonym {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
398 my ( $self, @values ) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
399
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
400 return unless( @values );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
401
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
402 # avoid duplicates
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
403 foreach my $syn (@values) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
404 next if grep { $_ eq $syn; } @{$self->{ "_synonyms" }};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
405 push( @{ $self->{ "_synonyms" } }, $syn );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
406 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
407
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
408 } # add_synonym
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
409
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
410
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
411 =head2 remove_synonyms
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
412
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
413 Title : remove_synonyms()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
414 Usage : $term->remove_synonyms();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
415 Function: Deletes (and returns) the synonyms of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
416 Returns : A list of synonyms [array of [scalar]].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
417 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
418
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
419 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
420
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
421 sub remove_synonyms {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
422 my ( $self ) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
423
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
424 my @a = $self->get_synonyms();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
425 $self->{ "_synonyms" } = [];
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
426 return @a;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
427
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
428 } # remove_synonyms
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
429
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
430 =head2 get_dblinks
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
431
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
432 Title : get_dblinks()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
433 Usage : @ds = $term->get_dblinks();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
434 Function: Returns a list of each dblinks of this GO term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
435 Returns : A list of dblinks [array of [scalars]].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
436 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
437
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
438 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
439
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
440 sub get_dblinks {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
441 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
442
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
443 return @{$self->{ "_dblinks" }} if exists($self->{ "_dblinks" });
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
444 return ();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
445 } # get_dblinks
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
446
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
447
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
448 =head2 add_dblink
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
449
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
450 Title : add_dblink
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
451 Usage : $term->add_dblink( @dbls );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
452 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
453 $term->add_dblink( $dbl );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
454 Function: Pushes one or more dblinks onto the list of dblinks.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
455 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
456 Args : One dblink [scalar] or a list of
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
457 dblinks [array of [scalars]].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
458
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
459 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
460
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
461 sub add_dblink {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
462 my ( $self, @values ) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
463
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
464 return unless( @values );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
465
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
466 # avoid duplicates
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
467 foreach my $dbl (@values) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
468 next if grep { $_ eq $dbl; } @{$self->{ "_dblinks" }};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
469 push( @{ $self->{ "_dblinks" } }, $dbl );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
470 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
471
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
472 } # add_dblink
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
473
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
474
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
475 =head2 remove_dblinks
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
476
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
477 Title : remove_dblinks()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
478 Usage : $term->remove_dblinks();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
479 Function: Deletes (and returns) the definition references of this GO term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
480 Returns : A list of definition references [array of [scalars]].
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
481 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
482
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
483 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
484
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
485 sub remove_dblinks {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
486 my ( $self ) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
487
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
488 my @a = $self->get_dblinks();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
489 $self->{ "_dblinks" } = [];
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
490 return @a;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
491
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
492 } # remove_dblinks
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
493
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
494 =head2 get_secondary_ids
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
495
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
496 Title : get_secondary_ids
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
497 Usage : @ids = $term->get_secondary_ids();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
498 Function: Returns a list of secondary identifiers of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
499
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
500 Secondary identifiers mostly originate from merging terms,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
501 or possibly also from splitting terms.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
502
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
503 Returns : A list of secondary identifiers [array of [scalar]]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
504 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
505
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
506 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
507
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
508 sub get_secondary_ids {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
509 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
510
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
511 return @{$self->{"_secondary_ids"}} if exists($self->{"_secondary_ids"});
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
512 return ();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
513 } # get_secondary_ids
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
514
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
515
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
516 =head2 add_secondary_id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
517
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
518 Title : add_secondary_id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
519 Usage : $term->add_secondary_id( @ids );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
520 or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
521 $term->add_secondary_id( $id );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
522 Function: Adds one or more secondary identifiers to this term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
523 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
524 Args : One or more secondary identifiers [scalars]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
525
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
526 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
527
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
528 sub add_secondary_id {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
529 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
530
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
531 return unless @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
532
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
533 # avoid duplicates
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
534 foreach my $id (@_) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
535 next if grep { $_ eq $id; } @{$self->{ "_secondary_ids" }};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
536 push( @{ $self->{ "_secondary_ids" } }, $id );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
537 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
538
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
539 } # add_secondary_id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
540
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
541
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
542 =head2 remove_secondary_ids
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
543
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
544 Title : remove_secondary_ids
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
545 Usage : $term->remove_secondary_ids();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
546 Function: Deletes (and returns) the secondary identifiers of this Term.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
547 Returns : The previous list of secondary identifiers [array of [scalars]]
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
548 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
549
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
550 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
551
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
552 sub remove_secondary_ids {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
553 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
554
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
555 my @a = $self->get_secondary_ids();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
556 $self->{ "_secondary_ids" } = [];
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
557 return @a;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
558
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
559 } # remove_secondary_ids
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
560
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
561
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
562 # Title :_is_true_or_false
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
563 # Function: Checks whether the argument is TRUE or FALSE.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
564 # Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
565 # Args : The value to be checked.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
566 sub _is_true_or_false {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
567 my ( $self, $value ) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
568 unless ( $value !~ /\D/ && ( $value == TRUE || $value == FALSE ) ) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
569 $self->throw( "Found [" . $value
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
570 . "] where " . TRUE . " or " . FALSE . " expected" );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
571 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
572 } # _is_true_or_false
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
573
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
574 =head1 Methods implementing L<Bio::IdentifiableI> and L<Bio::DescribableI>
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
575
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
576 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
577
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
578 =head2 object_id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
579
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
580 Title : object_id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
581 Usage : $string = $obj->object_id()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
582 Function: a string which represents the stable primary identifier
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
583 in this namespace of this object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
584
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
585 This is a synonym for identifier().
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
586
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
587 Returns : A scalar
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
588
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
589 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
590
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
591 sub object_id {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
592 return shift->identifier(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
593 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
594
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
595 =head2 authority
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
596
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
597 Title : authority
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
598 Usage : $authority = $obj->authority()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
599 Function: a string which represents the organisation which
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
600 granted the namespace, written as the DNS name for
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
601 organisation (eg, wormbase.org)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
602
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
603 This forwards to ontology()->authority(). Note that you
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
604 cannot set the authority before having set the ontology or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
605 the namespace (which will set the ontology).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
606
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
607 Returns : A scalar
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
608 Args : on set, the new value (a scalar)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
609
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
610 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
611
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
612 sub authority {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
613 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
614 my $ont = $self->ontology();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
615
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
616 return $ont->authority(@_) if $ont;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
617 $self->throw("cannot manipulate authority prior to ".
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
618 "setting the namespace or ontology") if @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
619 return undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
620 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
621
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
622
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
623 =head2 namespace
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
624
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
625 Title : namespace
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
626 Usage : $string = $obj->namespace()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
627 Function: A string representing the name space this identifier
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
628 is valid in, often the database name or the name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
629 describing the collection.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
630
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
631 This forwards to ontology() (set mode) and
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
632 ontology()->name() (get mode). I.e., setting the namespace
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
633 will set the ontology to one matching that name in the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
634 ontology store, or to one newly created.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
635
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
636 Returns : A scalar
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
637 Args : on set, the new value (a scalar)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
638
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
639 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
640
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
641 sub namespace {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
642 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
643
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
644 $self->ontology(@_) if(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
645 my $ont = $self->ontology();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
646 return defined($ont) ? $ont->name() : undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
647 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
648
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
649 =head2 display_name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
650
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
651 Title : display_name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
652 Usage : $string = $obj->display_name()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
653 Function: A string which is what should be displayed to the user.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
654
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
655 The definition in L<Bio::DescribableI> states that the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
656 string should not contain spaces. As this isn't very
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
657 sensible for ontology terms, we relax this here. The
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
658 implementation just forwards to name().
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
659
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
660 Returns : A scalar
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
661 Args : on set, the new value (a scalar)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
662
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
663 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
664
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
665 sub display_name {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
666 return shift->name(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
667 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
668
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
669
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
670 =head2 description
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
671
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
672 Title : description
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
673 Usage : $string = $obj->description()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
674 Function: A text string suitable for displaying to the user a
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
675 description. This string is likely to have spaces, but
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
676 should not have any newlines or formatting - just plain
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
677 text.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
678
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
679 This forwards to definition(). The caveat is that the text
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
680 will often be longer for ontology term definitions than the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
681 255 characters stated in the definition in
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
682 L<Bio::DescribableI>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
683
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
684 Returns : A scalar
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
685 Args : on set, the new value (a scalar)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
686
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
687 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
688
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
689 sub description {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
690 return shift->definition(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
691 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
692
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
693 #################################################################
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
694 # aliases or forwards to maintain backward compatibility
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
695 #################################################################
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
696
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
697 =head1 Deprecated methods
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
698
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
699 Used for looking up the methods that supercedes them.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
700
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
701 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
702
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
703 =head2 category
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
704
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
705 Title : category
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
706 Usage :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
707 Function: This method is deprecated. Use ontology() instead.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
708 Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
709 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
710 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
711
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
712
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
713 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
714
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
715 sub category {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
716 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
717
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
718 $self->warn("TermI::category is deprecated and being phased out. ".
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
719 "Use TermI::ontology instead.");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
720
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
721 # called in set mode?
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
722 if(@_) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
723 # yes; what is incompatible with ontology() is if we were given
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
724 # a TermI object
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
725 my $arg = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
726 $arg = $arg->name() if ref($arg) && $arg->isa("Bio::Ontology::TermI");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
727 return $self->ontology($arg,@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
728 } else {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
729 # No, called in get mode. This is always incompatible with ontology()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
730 # since category is supposed to return a TermI.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
731 my $ont = $self->ontology();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
732 my $term;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
733 if(defined($ont)) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
734 $term = Bio::Ontology::Term->new(-name => $ont->name(),
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
735 -identifier =>$ont->identifier());
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
736 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
737 return $term;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
738 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
739 } # category
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
740
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
741 *each_synonym = \&get_synonyms;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
742 *add_synonyms = \&add_synonym;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
743 *each_dblink = \&get_dblinks;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
744 *add_dblinks = \&add_dblink;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
745
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
746 1;