General feature format: Difference between revisions
Outpaddling (talk | contribs) No edit summary |
CambrianCrab (talk | contribs) Refined the table of file structure to fit MOS, remove off-topic information, and add missing information |
||
Line 1: | Line 1: | ||
{{Short description| |
{{Short description|File format for genomic features}} |
||
{{Infobox file format |
{{Infobox file format |
||
| name = General feature format |
| name = General feature format |
||
Line 58: | Line 58: | ||
| 2 |
| 2 |
||
| source |
| source |
||
| The algorithm or procedure that generated the feature. This is typically the name of a software or database. |
|||
| Keyword identifying the source of the feature, like a program (e.g. [[Augustus]] or [[RepeatMasker]]) or an organization (like [[The Arabidopsis Information Resource|TAIR]]). |
|||
|- |
|- |
||
| 3 |
| 3 |
||
Line 78: | Line 78: | ||
| 7 |
| 7 |
||
| strand |
| strand |
||
| Single character that indicates the [[Sense_(molecular_biology)#DNA_sense|strand]] of the feature |
| Single character that indicates the [[Sense_(molecular_biology)#DNA_sense|strand]] of the feature. This can be "+" (positive, or 5'->3'), "-", (negative, or 3'->5'), "." (undetermined), or "?" for features with relevant but unknown strands. |
||
|- |
|- |
||
| 8 |
| 8 |
||
Line 86: | Line 86: | ||
| 9 |
| 9 |
||
| attributes |
| attributes |
||
| A list of tag-value pairs separated by a semicolon with additional information about the feature. |
|||
| All the other information pertaining to this feature. The format, structure and content of this field is the one which varies the most between the three competing file formats. |
|||
|} |
|} |
||
Line 122: | Line 122: | ||
| Jalview || A multiple sequence alignment editor & viewer || [[Jalview]] |
| Jalview || A multiple sequence alignment editor & viewer || [[Jalview]] |
||
|- |
|- |
||
| STRAP || Underlining sequence features in multiple alignments. Example output: [https://web.archive.org/web/20090613045440/http://www.charite.de/bioinf/strap/exampleOutput.html] |
| STRAP || Underlining sequence features in multiple alignments. Example output: [https://web.archive.org/web/20090613045440/http://www.charite.de/bioinf/strap/exampleOutput.html]|| [http://3d-alignment.eu/] |
||
|- |
|- |
||
| JBrowse || JBrowse is a fast, embeddable genome browser built completely with JavaScript and HTML5 || [http://jbrowse.org JBrowse.org] |
| JBrowse || JBrowse is a fast, embeddable genome browser built completely with JavaScript and HTML5 || [http://jbrowse.org JBrowse.org] |
Revision as of 02:10, 28 February 2023
Filename extensions | .gff |
---|---|
Internet media type | text/gff3 |
Developed by | Sanger Centre (v2), Sequence Ontology Project (v3) |
Type of format | Bioinformatics |
Extended from | Tab-separated values |
Open format? | yes |
Website | github |
In bioinformatics, the general feature format (gene-finding format, generic feature format, GFF) is a file format used for describing genes and other features of DNA, RNA and protein sequences.
GFF Versions
The following versions of GFF exist:
- General Feature Format Version 2, generally deprecated
- Gene Transfer Format 2.2, a derivative used by Ensembl
- Generic Feature Format Version 3
- Genome Variation Format, with additional pragmas and attributes for sequence_alteration features
GFF2/GTF had a number of deficiencies, notably that it can only represent two-level feature hierarchies and thus cannot handle the three-level hierarchy of gene → transcript → exon. GFF3 addresses this and other deficiencies. For example, it supports arbitrarily many hierarchical levels, and gives specific meanings to certain tags in the attributes field.
The GTF is identical to GFF, version 2.[1]
GFF general structure
All GFF formats (GFF2, GFF3 and GTF) are tab delimited with 9 fields per line. They all share the same structure for the first 7 fields, while differing in the content and format of the ninth field. Some field names have been changed in GFF3 to avoid confusion. For example, the "seqid" field was formerly referred to as "sequence", which may be confused with a nucleotide or amino acid chain. The general structure is as follows:
Position index | Position name | Description |
---|---|---|
1 | seqid | The name of the sequence where the feature is located. |
2 | source | The algorithm or procedure that generated the feature. This is typically the name of a software or database. |
3 | type | The feature type name, like "gene" or "exon". In a well structured GFF file, all the children features always follow their parents in a single block (so all exons of a transcript are put after their parent "transcript" feature line and before any other parent transcript line). In GFF3, all features and their relationships should be compatible with the standards released by the Sequence Ontology Project. |
4 | start | Genomic start of the feature, with a 1-base offset. This is in contrast with other 0-offset half-open sequence formats, like BED. |
5 | end | Genomic end of the feature, with a 1-base offset. This is the same end coordinate as it is in 0-offset half-open sequence formats, like BED.[citation needed] |
6 | score | Numeric value that generally indicates the confidence of the source in the annotated feature. A value of "." (a dot) is used to define a null value. |
7 | strand | Single character that indicates the strand of the feature. This can be "+" (positive, or 5'->3'), "-", (negative, or 3'->5'), "." (undetermined), or "?" for features with relevant but unknown strands. |
8 | phase | phase of CDS features; it can be either one of 0, 1, 2 (for CDS features) or "." (for everything else). See the section below for a detailed explanation. |
9 | attributes | A list of tag-value pairs separated by a semicolon with additional information about the feature. |
The 8th field: phase of CDS features
Simply put, CDS means "CoDing Sequence". The exact meaning of the term is defined by Sequence Ontology (SO). According to the GFF3 specification:[2][3]
For features of type "CDS", the phase indicates where the feature begins with reference to the reading frame. The phase is one of the integers 0, 1, or 2, indicating the number of bases that should be removed from the beginning of this feature to reach the first base of the next codon.
Meta Directives
In GFF files, additional meta information can be included and follows after the ## directive. This meta information can detail GFF version, sequence region, or species (full list of meta data types can be found at Sequence Ontology specifications).
GFF software
Servers
Servers that generate this format:
Server | Example file |
---|---|
UniProt | [1] |
Clients
Clients that use this format:
Name | Description | Links |
---|---|---|
GBrowse | GMOD genome viewer | GBrowse |
IGB | Integrated Genome Browser | Integrated Genome Browser |
Jalview | A multiple sequence alignment editor & viewer | Jalview |
STRAP | Underlining sequence features in multiple alignments. Example output: [2] | [3] |
JBrowse | JBrowse is a fast, embeddable genome browser built completely with JavaScript and HTML5 | JBrowse.org |
ZENBU | A collaborative, omics data integration and interactive visualization system | [4] |
Validation
The modENCODE project hosts an online GFF3 validation tool with generous limits of 286.10 MB and 15 million lines.
The Genome Tools software collection contains a gff3validator tool that can be used offline to validate and possibly tidy GFF3 files. An online validation service is also available.
See also
References
- ^ GFF/GTF info, from Ensembl
- ^ "GFF3 specification". GitHub. 2018-11-24.
- ^ "Gff3 - Gmod".