1Ace::Sequence::Multi(3)User Contributed Perl DocumentatioAnce::Sequence::Multi(3)
2
3
4

NAME

6       Ace::Sequence::Multi - Combine Feature Tables from Multiple Databases
7

SYNOPSIS

9           use Ace::Sequence::Multi;
10
11           # open reference database
12           $ref = Ace->connect(-host=>'stein.cshl.org',-port=>200009);
13
14           # open some secondary databases
15           $db1 = Ace->connect(-host=>'stein.cshl.org',-port=>200010);
16           $db2 = Ace->connect(-path=>'/usr/local/acedb/mydata');
17
18           # Make an Ace::Sequence::Multi object
19           $seq = Ace::Sequence::Multi->new(-name   => 'CHROMOSOME_I,
20                                            -db     => $ref,
21                                            -offset => 3_000_000,
22                                            -length => 1_000_000);
23
24           # add the secondary databases
25           $seq->add_secondary($db1,$db2);
26
27           # get all the homologies (a list of Ace::Sequence::Feature objs)
28           @homol = $seq->features('Similarity');
29
30           # Get information about the first one -- goes to the correct db
31           $feature = $homol[0];
32           $type    = $feature->type;
33           $subtype = $feature->subtype;
34           $start   = $feature->start;
35           $end     = $feature->end;
36           $score   = $feature->score;
37
38           # Follow the target
39           $target  = $feature->info;
40
41           # print the target's start and end positions
42           print $target->start,'-',$target->end, "\n";
43

DESCRIPTION

45       Ace::Sequence::Multi transparently combines information stored about a
46       sequence in a reference database with features tables from any number
47       of annotation databases.  The resulting object can be used just like an
48       Ace::Sequence object, except that the features remember their database
49       of origin and go back to that database for information.
50
51       This class will only work properly if the reference database and all
52       annotation databases share the same cosmid map.
53

OBJECT CREATION

55       You will use the new() method to create new Ace::Sequence::Multi
56       objects.  The arguments are identical to the those in the Ace::Sequence
57       parent class, with the addition of an option -secondary argument, which
58       points to one or more secondary databases from which to fetch
59       annotation information.
60
61       -source
62           The sequence source.  This must be an Ace::Object of the "Sequence"
63           class, or be a sequence-like object containing the SMap tag (see
64           below).
65
66       -offset
67           An offset from the beginning of the source sequence.  The retrieved
68           Ace::Sequence will begin at this position.  The offset can be any
69           positive or negative integer.  Offets are 0-based.
70
71       -length
72           The length of the sequence to return.  Either a positive or
73           negative integer can be specified.  If a negative length is given,
74           the returned sequence will be complemented relative to the source
75           sequence.
76
77       -refseq
78           The sequence to use to establish the coordinate system for the
79           returned sequence.  Normally the source sequence is used to
80           establish the coordinate system, but this can be used to override
81           that choice.  You can provide either an Ace::Object or just a
82           sequence name for this argument.  The source and reference
83           sequences must share a common ancestor, but do not have to be
84           directly related.  An attempt to use a disjunct reference sequence,
85           such as one on a different chromosome, will fail.
86
87       -name
88           As an alternative to using an Ace::Object with the -source
89           argument, you may specify a source sequence using -name and -db.
90           The Ace::Sequence module will use the provided database accessor to
91           fetch a Sequence object with the specified name. new() will return
92           undef is no Sequence by this name is known.
93
94       -db This argument is required if the source sequence is specified by
95           name rather than by object reference.  It must be a previously
96           opened handle to the reference database.
97
98       -secondary
99           This argument points to one or more previously-opened annotation
100           databases.  You may use a scalar if there is only one annotation
101           database.  Otherwise, use an array reference.  You may add and
102           delete annotation databases after the object is created by using
103           the add_secondary() and delete_secondary() methods.
104
105       If new() is successful, it will create an Ace::Sequence::Multi object
106       and return it.  Otherwise it will return undef and return a descriptive
107       message in Ace->error().  Certain programming errors, such as a failure
108       to provide required arguments, cause a fatal error.
109

OBJECT METHODS

111       Most methods are inherited from Ace::Sequence.  The following
112       additional methods are supported:
113
114       secondary()
115             @databases = $seq->secondary;
116
117           Return a list of the secondary databases currently in use, or an
118           empty list if none.
119
120       add_secondary()
121             $seq->add_secondary($db1,$db2,...)
122
123           Add one or more secondary databases to the list of annotation
124           databases.  Duplicate databases will be silently ignored.
125
126       delete_secondary()
127             $seq->delete_secondary($db1,$db2,...)
128
129           Delete one or more secondary databases from the list of annotation
130           databases.  Databases not already in use will be silently ignored.
131

SEE ALSO

133       Ace, Ace::Object, Ace::Sequence,Ace::Sequence::Homol,
134       Ace::Sequence::FeatureList, Ace::Sequence::Feature, GFF
135

AUTHOR

137       Lincoln Stein <lstein@w3.org> with extensive help from Jean Thierry-
138       Mieg <mieg@kaa.crbm.cnrs-mop.fr>
139
140       Copyright (c) 1999, Lincoln D. Stein
141
142       This library is free software; you can redistribute it and/or modify it
143       under the same terms as Perl itself.  See DISCLAIMER.txt for
144       disclaimers of warranty.
145
146
147
148perl v5.36.0                      2022-07-22           Ace::Sequence::Multi(3)
Impressum