annotate variant_effect_predictor/Bio/Ontology/OntologyI.pm @ 0:2bc9b66ada89 draft default tip

Uploaded
author mahtabm
date Thu, 11 Apr 2013 06:29:17 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
1 # $Id: OntologyI.pm,v 1.2.2.4 2003/03/27 10:07:56 lapp Exp $
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
2 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
3 # BioPerl module for Bio::Ontology::OntologyI
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
4 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
5 # Cared for by Hilmar Lapp <hlapp at gmx.net>
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
6 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
7 # Copyright Hilmar Lapp
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
8 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
9 # You may distribute this module under the same terms as perl itself
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
10
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
11 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
12 # (c) Hilmar Lapp, hlapp at gmx.net, 2003.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
13 # (c) GNF, Genomics Institute of the Novartis Research Foundation, 2003.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
14 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
15 # You may distribute this module under the same terms as perl itself.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
16 # Refer to the Perl Artistic License (see the license accompanying this
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
17 # software package, or see http://www.perl.com/language/misc/Artistic.html)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
18 # for the terms under which you may use, modify, and redistribute this module.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
19 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
20 # THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
21 # WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
22 # MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
23 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
24
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
25 # POD documentation - main docs before the code
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
26
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
27 =head1 NAME
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
28
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
29 Bio::Ontology::OntologyI - Interface for an ontology implementation
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
30
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
31 =head1 SYNOPSIS
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
32
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
33 # see method documentation
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
34
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
35 =head1 DESCRIPTION
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
36
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
37 This describes the minimal interface an ontology implementation must
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
38 provide. In essence, it represents a namespace with description on top
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
39 of the query interface OntologyEngineI.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
40
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
41 This interface inherits from L<Bio::Ontology::OntologyEngineI>.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
42
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
43 =head1 FEEDBACK
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
44
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
45 =head2 Mailing Lists
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
46
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
47 User feedback is an integral part of the evolution of this and other
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
48 Bioperl modules. Send your comments and suggestions preferably to
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
49 the Bioperl mailing list. Your participation is much appreciated.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
50
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
51 bioperl-l@bioperl.org - General discussion
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
52 http://bioperl.org/MailList.shtml - About the mailing lists
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
53
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
54 =head2 Reporting Bugs
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
55
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
56 Report bugs to the Bioperl bug tracking system to help us keep track
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
57 of the bugs and their resolution. Bug reports can be submitted via
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
58 email or the web:
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
59
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
60 http://bugzilla.bioperl.org/
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
61
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
62 =head1 AUTHOR - Hilmar Lapp
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
63
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
64 Email hlapp at gmx.net
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
65
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
66 =head1 CONTRIBUTORS
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
67
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
68 Additional contributors names and emails here
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
69
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
70 =head1 APPENDIX
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
71
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
72 The rest of the documentation details each of the object methods.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
73 Internal methods are usually preceded with a _
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
74
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
75 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
76
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
77
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
78 # Let the code begin...
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
79
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
80
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
81 package Bio::Ontology::OntologyI;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
82 use vars qw(@ISA);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
83 use strict;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
84
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
85 use Bio::Ontology::OntologyEngineI;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
86
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
87 @ISA = qw( Bio::Ontology::OntologyEngineI );
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
88
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
89 =head1 Methods defined in this interface.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
90
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
91 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
92
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
93 =head2 name
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
94
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
95 Title : name
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
96 Usage : $obj->name($newval)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
97 Function: Get/set the name of this ontology.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
98 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
99 Returns : value of name (a scalar)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
100 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
101
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
102
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
103 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
104
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
105 sub name{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
106 shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
107 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
108
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
109 =head2 authority
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
110
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
111 Title : authority
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
112 Usage : $auth = $obj->authority()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
113 Function: Get/set the authority for this ontology, for instance the
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
114 DNS base for the organization granting the name of the
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
115 ontology and identifiers for the terms.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
116
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
117 This attribute is optional and should not generally
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
118 expected by applications to have been set. It is here to
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
119 follow the rules for namespaces, which ontologies serve as
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
120 for terms.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
121
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
122 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
123 Returns : value of authority (a scalar)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
124 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
125
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
126
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
127 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
128
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
129 sub authority{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
130 shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
131 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
132
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
133 =head2 identifier
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
134
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
135 Title : identifier
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
136 Usage : $id = $obj->identifier()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
137 Function: Get an identifier for this ontology.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
138
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
139 This is primarily intended for look-up purposes. Clients
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
140 should not expect the value to be modifiable, and it may
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
141 not be allowed to set its value from outside. Also, the
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
142 identifier's uniqueness may only hold within the scope of a
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
143 particular application's run time, i.e., it may be a memory
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
144 location.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
145
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
146 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
147 Returns : value of identifier (a scalar)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
148 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
149
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
150
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
151 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
152
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
153 sub identifier{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
154 shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
155 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
156
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
157 =head2 definition
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
158
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
159 Title : definition
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
160 Usage : $def = $obj->definition()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
161 Function: Get a descriptive definition for this ontology.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
162 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
163 Returns : value of definition (a scalar)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
164 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
165
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
166
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
167 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
168
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
169 sub definition{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
170 shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
171 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
172
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
173 =head2 close
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
174
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
175 Title : close
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
176 Usage :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
177 Function: Release any resources this ontology may occupy. In order
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
178 to efficiently release used memory or file handles, you
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
179 should call this method once you are finished with an
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
180 ontology.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
181
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
182 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
183 Returns : TRUE on success and FALSE otherwise
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
184 Args : none
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
185
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
186
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
187 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
188
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
189 sub close{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
190 shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
191 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
192
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
193 =head1 Methods inherited from L<Bio::Ontology::OntologyEngineI>
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
194
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
195 Their documentations are copied here for completeness. In most use
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
196 cases, you will want to access the query methods of an ontology, not
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
197 just the name and description ...
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
198
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
199 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
200
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
201 =head2 add_term
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
202
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
203 Title : add_term
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
204 Usage : add_term(TermI term): TermI
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
205 Function: Adds TermI object to the ontology engine term store.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
206
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
207 For ease of use, if the ontology property of the term
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
208 object was not set, an implementation is encouraged to set
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
209 it to itself upon adding the term.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
210
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
211 Example : $oe->add_term($term)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
212 Returns : its argument.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
213 Args : object of class TermI.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
214
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
215
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
216 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
217
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
218 =head2 add_relationship
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
219
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
220 Title : add_relationship
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
221 Usage : add_relationship(RelationshipI relationship): RelationshipI
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
222 Function: Adds a relationship object to the ontology engine.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
223 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
224 Returns : Its argument.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
225 Args : A RelationshipI object.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
226
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
227
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
228 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
229
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
230 =head2 get_relationships
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
231
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
232 Title : get_relationships
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
233 Usage : get_relationships(TermI term): RelationshipI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
234 Function: Retrieves all relationship objects from this ontology engine,
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
235 or all relationships of a term if a term is supplied.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
236 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
237 Returns : Array of Bio::Ontology::RelationshipI objects
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
238 Args : None, or a Bio::Ontology::TermI compliant object for which
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
239 to retrieve the relationships.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
240
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
241
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
242 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
243
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
244 =head2 get_predicate_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
245
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
246 Title : get_predicate_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
247 Usage : get_predicate_terms(): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
248 Function:
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
249 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
250 Returns :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
251 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
252
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
253
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
254 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
255
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
256 =head2 get_child_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
257
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
258 Title : get_child_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
259 Usage : get_child_terms(TermI term, TermI[] predicate_terms): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
260 Function: Retrieves all child terms of a given term, that satisfy a
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
261 relationship among those that are specified in the second
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
262 argument or undef otherwise. get_child_terms is a special
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
263 case of get_descendant_terms, limiting the search to the
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
264 direct descendants.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
265
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
266 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
267 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
268 Args : First argument is the term of interest, second is the list
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
269 of relationship type terms.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
270
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
271
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
272 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
273
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
274 =head2 get_descendant_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
275
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
276 Title : get_descendant_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
277 Usage : get_descendant_terms(TermI term, TermI[] rel_types): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
278 Function: Retrieves all descendant terms of a given term, that
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
279 satisfy a relationship among those that are specified in
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
280 the second argument or undef otherwise.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
281 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
282 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
283 Args : First argument is the term of interest, second is the list
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
284 of relationship type terms.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
285
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
286
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
287 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
288
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
289 =head2 get_parent_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
290
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
291 Title : get_parent_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
292 Usage : get_parent_terms(TermI term, TermI[] predicate_terms): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
293 Function: Retrieves all parent terms of a given term, that satisfy a
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
294 relationship among those that are specified in the second
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
295 argument or undef otherwise. get_parent_terms is a special
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
296 case of get_ancestor_terms, limiting the search to the
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
297 direct ancestors.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
298
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
299 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
300 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
301 Args : First argument is the term of interest, second is the list
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
302 of relationship type terms.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
303
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
304
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
305 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
306
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
307 =head2 get_ancestor_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
308
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
309 Title : get_ancestor_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
310 Usage : get_ancestor_terms(TermI term, TermI[] predicate_terms): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
311 Function: Retrieves all ancestor terms of a given term, that satisfy
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
312 a relationship among those that are specified in the second
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
313 argument or undef otherwise.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
314
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
315 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
316 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
317 Args : First argument is the term of interest, second is the list
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
318 of relationship type terms.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
319
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
320
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
321 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
322
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
323 =head2 get_leaf_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
324
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
325 Title : get_leaf_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
326 Usage : get_leaf_terms(): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
327 Function: Retrieves all leaf terms from the ontology. Leaf term is a
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
328 term w/o descendants.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
329
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
330 Example : @leaf_terms = $obj->get_leaf_terms()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
331 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
332 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
333
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
334
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
335 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
336
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
337 =head2 get_root_terms()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
338
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
339 Title : get_root_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
340 Usage : get_root_terms(): TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
341 Function: Retrieves all root terms from the ontology. Root term is a
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
342 term w/o descendants.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
343
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
344 Example : @root_terms = $obj->get_root_terms()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
345 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
346 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
347
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
348
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
349 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
350
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
351 =head2 get_all_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
352
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
353 Title : get_all_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
354 Usage : get_all_terms: TermI[]
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
355 Function: Retrieves all terms from the ontology.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
356
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
357 We do not mandate an order here in which the terms are
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
358 returned. In fact, the default implementation will return
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
359 them in unpredictable order.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
360
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
361 Example : @terms = $obj->get_all_terms()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
362 Returns : Array of TermI objects.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
363 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
364
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
365
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
366 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
367
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
368
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
369 =head2 find_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
370
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
371 Title : find_terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
372 Usage : ($term) = $oe->find_terms(-identifier => "SO:0000263");
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
373 Function: Find term instances matching queries for their attributes.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
374
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
375 An implementation may not support querying for arbitrary
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
376 attributes, but can generally be expected to accept
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
377 -identifier and -name as queries. If both are provided,
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
378 they are implicitly intersected.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
379
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
380 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
381 Returns : an array of zero or more Bio::Ontology::TermI objects
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
382 Args : Named parameters. The following parameters should be recognized
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
383 by any implementation:
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
384
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
385 -identifier query by the given identifier
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
386 -name query by the given name
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
387
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
388
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
389 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
390
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
391 =head1 Factory for relationships and terms
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
392
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
393 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
394
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
395 =head2 relationship_factory
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
396
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
397 Title : relationship_factory
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
398 Usage : $fact = $obj->relationship_factory()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
399 Function: Get (and set, if the implementation supports it) the object
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
400 factory to be used when relationship objects are created by
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
401 the implementation on-the-fly.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
402
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
403 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
404 Returns : value of relationship_factory (a Bio::Factory::ObjectFactoryI
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
405 compliant object)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
406 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
407
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
408
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
409 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
410
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
411 sub relationship_factory{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
412 return shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
413 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
414
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
415 =head2 term_factory
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
416
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
417 Title : term_factory
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
418 Usage : $fact = $obj->term_factory()
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
419 Function: Get (and set, if the implementation supports it) the object
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
420 factory to be used when term objects are created by
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
421 the implementation on-the-fly.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
422
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
423 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
424 Returns : value of term_factory (a Bio::Factory::ObjectFactoryI
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
425 compliant object)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
426 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
427
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
428
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
429 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
430
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
431 sub term_factory{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
432 return shift->throw_not_implemented();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
433 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
434
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
435 1;