.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Ace::Sequence::Feature 3pm" .TH Ace::Sequence::Feature 3pm 2024-03-07 "perl v5.38.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Ace::Sequence::Feature \- Examine Sequence Feature Tables .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 2 \& # open database connection and get an Ace::Object sequence \& use Ace::Sequence; \& \& # get a megabase from the middle of chromosome I \& $seq = Ace::Sequence\->new(\-name => \*(AqCHROMOSOME_I, \& \-db => $db, \& \-offset => 3_000_000, \& \-length => 1_000_000); \& \& # get all the homologies (a list of Ace::Sequence::Feature objs) \& @homol = $seq\->features(\*(AqSimilarity\*(Aq); \& \& # Get information about the first one \& $feature = $homol[0]; \& $type = $feature\->type; \& $subtype = $feature\->subtype; \& $start = $feature\->start; \& $end = $feature\->end; \& $score = $feature\->score; \& \& # Follow the target \& $target = $feature\->info; \& \& # print the target\*(Aqs start and end positions \& print $target\->start,\*(Aq\-\*(Aq,$target\->end, "\en"; .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" \&\fIAce::Sequence::Feature\fR is a subclass of Ace::Sequence::Feature specialized for returning information about particular features in a GFF format feature table. .SH "OBJECT CREATION" .IX Header "OBJECT CREATION" You will not ordinarily create an \fIAce::Sequence::Feature\fR object directly. Instead, objects will be created in response to a \fBfeature()\fR call to an \fIAce::Sequence\fR object. If you wish to create an \&\fIAce::Sequence::Feature\fR object directly, please consult the source code for the \fR\f(BInew()\fR\fI\fR method. .SH "OBJECT METHODS" .IX Header "OBJECT METHODS" Most methods are inherited from \fIAce::Sequence\fR. The following methods are also supported: .IP \fBseqname()\fR 4 .IX Item "seqname()" .Vb 1 \& $object = $feature\->seqname; .Ve .Sp Return the ACeDB Sequence object that this feature is attached to. The return value is an \fIAce::Object\fR of the Sequence class. This corresponds to the first field of the GFF format and does not necessarily correspond to the \fIAce::Sequence\fR object from which the feature was obtained (use \fBsource_seq()\fR for that). .IP \fBsource()\fR 4 .IX Item "source()" .PD 0 .IP \fBmethod()\fR 4 .IX Item "method()" .IP \fBsubtype()\fR 4 .IX Item "subtype()" .PD .Vb 1 \& $source = $feature\->source; .Ve .Sp These three methods are all synonyms for the same thing. They return the second field of the GFF format, called "source" in the documentation. This is usually the method or algorithm used to predict the feature, such as "GeneFinder" or "tRNA" scan. To avoid ambiguity and enhance readability, the \fBmethod()\fR and \fBsubtype()\fR synonyms are also recognized. .IP \fBfeature()\fR 4 .IX Item "feature()" .PD 0 .IP \fBtype()\fR 4 .IX Item "type()" .PD .Vb 1 \& $type = $feature\->type; .Ve .Sp These two methods are also synonyms. They return the type of the feature, such as "exon", "similarity" or "Predicted_gene". In the GFF documentation this is called the "feature" field. For readability, you can also use \fBtype()\fR to fetch the field. .IP \fBabs_start()\fR 4 .IX Item "abs_start()" .Vb 1 \& $start = $feature\->abs_start; .Ve .Sp This method returns the absolute start of the feature within the sequence segment indicated by \fBseqname()\fR. As in the \fIAce::Sequence\fR method, use \fBstart()\fR to obtain the start of the feature relative to its source. .IP \fBabs_start()\fR 4 .IX Item "abs_start()" .Vb 1 \& $start = $feature\->abs_start; .Ve .Sp This method returns the start of the feature relative to the sequence segment indicated by \fBseqname()\fR. As in the \fIAce::Sequence\fR method, you will more usually use the inherited \fBstart()\fR method to obtain the start of the feature relative to its source sequence (the \&\fIAce::Sequence\fR from which it was originally derived). .IP \fBabs_end()\fR 4 .IX Item "abs_end()" .Vb 1 \& $start = $feature\->abs_end; .Ve .Sp This method returns the end of the feature relative to the sequence segment indicated by \fBseqname()\fR. As in the \fIAce::Sequence\fR method, you will more usually use the inherited \fBend()\fR method to obtain the end of the feature relative to the \fIAce::Sequence\fR from which it was derived. .IP \fBscore()\fR 4 .IX Item "score()" .Vb 1 \& $score = $feature\->score; .Ve .Sp For features that are associated with a numeric score, such as similarities, this returns that value. For other features, this method returns undef. .IP \fBstrand()\fR 4 .IX Item "strand()" .Vb 1 \& $strand = $feature\->strand; .Ve .Sp Returns the strandedness of this feature, either "+1" or "\-1". For features that are not stranded, returns 0. .IP \fBreversed()\fR 4 .IX Item "reversed()" .Vb 1 \& $reversed = $feature\->reversed; .Ve .Sp Returns true if the feature is reversed relative to its source sequence. .IP \fBframe()\fR 4 .IX Item "frame()" .Vb 1 \& $frame = $feature\->frame; .Ve .Sp For features that have a frame, such as a predicted coding sequence, returns the frame, either 0, 1 or 2. For other features, returns undef. .IP \fBgroup()\fR 4 .IX Item "group()" .PD 0 .IP \fBinfo()\fR 4 .IX Item "info()" .IP \fBtarget()\fR 4 .IX Item "target()" .PD .Vb 1 \& $info = $feature\->info; .Ve .Sp These methods (synonyms for one another) return an Ace::Object containing other information about the feature derived from the 8th field of the GFF format, the so-called "group" field. The type of the Ace::Object is dependent on the nature of the feature. The possibilities are shown in the table below: .Sp .Vb 2 \& Feature Type Value of Group Field \& \-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \& \& note A Text object containing the note. \& \& similarity An Ace::Sequence::Homology object containing \& the target and its start/stop positions. \& \& intron An Ace::Object containing the gene from \& exon which the feature is derived. \& misc_feature \& \& other A Text object containing the group data. .Ve .IP \fBasString()\fR 4 .IX Item "asString()" .Vb 1 \& $label = $feature\->asString; .Ve .Sp Returns a human-readable identifier describing the nature of the feature. The format is: .Sp .Vb 1 \& $type:$name/$start\-$end .Ve .Sp for example: .Sp .Vb 1 \& exon:ZK154.3/1\-67 .Ve .Sp This method is also called automatically when the object is treated in a string context. .SH "SEE ALSO" .IX Header "SEE ALSO" Ace, Ace::Object, Ace::Sequence,Ace::Sequence::Homol, Ace::Sequence::FeatureList, GFF .SH AUTHOR .IX Header "AUTHOR" Lincoln Stein with extensive help from Jean Thierry-Mieg .PP Copyright (c) 1999, Lincoln D. Stein .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of warranty.