Karen EilbeckpersName, Suzanna E LewispersName, Christopher J MungallpersName, Mark YandellpersName, Lincoln SteinpersName, Richard DurbinpersName, Michael AshburnerpersName (2005date). “The Sequence Ontology: a tool for the unification of genome annotations.” Genome Biologytitle·j.
Object of study — the Sequence Ontologyterm: a controlled vocabularyterm·mth with formal relationships for the parts of genome annotationsterm·key, applied to the D. melanogaster annotation
Research question — how a shared ontologyterm·mth of sequence features and their relationships can unify, validate and analyse genome annotationsterm·key
Contribution — the Sequence Ontologyterm and its SOFAterm subset, a naming convention, three relationship types, and an extensional-mereology classification of alternative splicingterm·key
phenomenon · claim-type · cross-domain-transfer · mechanism · claim-relation · replication-status · limitation — grounded in the full text| phenomenon | ambiguous biological terminology that makes genome annotations from different sources hard to exchange and compare — “Unfortunately, biological terminology is notoriously ambiguous; the same word is often used to describe more than one thing and there are many dialects.” | |
| claim-type | method — “The goal of the Sequence Ontology (SO) project is to produce a structured controlled vocabulary with a common set of terms and definitions for parts of a genomic annotation, and to describe the relationships among them.” | |
| method — evidence | — “As part of a pilot project to evaluate the practical utility of SO as a tool for data management and analysis, we have used SO to name and enumerate the parts of every protein-coding annotation in the D. melanogaster genome.” | |
| object of study — evidence | — “The goal of the Sequence Ontology (SO) project is to produce a structured controlled vocabulary with a common set of terms and definitions for parts of a genomic annotation, and to describe the relationships among them.” | |
| research question — evidence | — “As part of a pilot project to evaluate the practical utility of SO as a tool for data management and analysis, we have used SO to name and enumerate the parts of every protein-coding annotation in the D. melanogaster genome.” | |
| contribution — evidence | — “This subset is known as the Sequence Ontology Feature Annotation, or SOFA.” | |
| mechanism | inheritance from parents only Children inherit from parents but never from siblings, so labelling a feature ncRNA rules out the polypeptide an mRNA could produce. — “This fact illustrates another important aspect of how SO handles relationships: children always inherit from parents but never from siblings.” | mechanisms[0] |
| mechanism | transitivity within one part-whole subclass A chain of part_of relationships is transitive only if every link belongs to the same subclass. — “Winston et al . [ 25 ] argue that there is transitivity across a series of part_of relationships only if they all belong to the same subclass.” | mechanisms[1] |
| mechanism | knowledge held in the ontology Because relationships live in the ontology rather than the software, the two can be revised independently. — “Placing the biological knowledge in the ontology rather than in the software means that the ontology and the software that uses it can be developed, revised, and extended independently of one another.” | mechanisms[2] |
| mechanism | nonsense-mediated decay of 3-prime untranslated exons Splice junctions downstream of a stop codon may target a transcript for degradation, which may explain fewer 3-prime untranslated exons. — “First, regardless of exon class, most entirely untranslated exons are 5-prime exons; the lower frequency of 3-prime untranslated exons is perhaps due to nonsense-mediated decay [ 31 ], as the presence of splice junctions in a processed transcript downstream of its stop codon are believed to target that transcript for degradation.” | mechanisms[3] |
| builds-on | Winston et al. (ref 25), subclasses of the part-whole relationship — “By addressing the vague English term 'part of' in this way, Winston et al. solve many of the problems associated with reasoning across part_of relationships; thus, we are adopting their approach with SO.” | claim_relations[0] |
| builds-on | the Gene Ontology (ref 8), SO's sister project within OBO — “SO is a sister project to the Gene Ontology (GO) [ 8 ] and is part of the Open Biomedical Ontologies (OBO) project [ 9 ].” | claim_relations[1] |
| extends | the Feature Table of GenBank, EMBL and DDBJ (ref 12) — “There are currently 171 locatable sequence features in SOFA compared to 65 of the Feature Table.” | claim_relations[2] |
| sense | overlap (EM sense) - sharing a part (an exon), not sharing genomic coordinates — “Two transcripts overlap if they share one or more exon in common.” | senses[0] |
| sense | disjoint (EM sense) - sharing no exons, even where exons overlap on the chromosome — “Thus, two transcripts may be disjoint even if their exons partially overlap one another.” | senses[1] |
| sense | part of - the paper calls the English term vague and adopts Winston et al.'s subclasses of part-whole relationship — “By addressing the vague English term 'part of' in this way, Winston et al. solve many of the problems associated with reasoning across part_of relationships; thus, we are adopting their approach with SO.” | senses[2] |
| weight | Winston et al. (ref 25), subclasses of the part-whole relationship — 0.95 — “By addressing the vague English term 'part of' in this way, Winston et al. solve many of the problems associated with reasoning across part_of relationships; thus, we are adopting their approach with SO.” | claim_relations[0] |
| weight | the Gene Ontology (ref 8), SO's sister project within OBO — 0.85 — “SO is a sister project to the Gene Ontology (GO) [ 8 ] and is part of the Open Biomedical Ontologies (OBO) project [ 9 ].” | claim_relations[1] |
| weight | the Feature Table of GenBank, EMBL and DDBJ (ref 12) — 0.9 — “There are currently 171 locatable sequence features in SOFA compared to 65 of the Feature Table.” | claim_relations[2] |
| note | region —renamed-across-fields→ interiors — The paper states SO's basic type region is equivalent to the concept of interiors in the field of topological relationships (junction likewise to boundaries) - one concept under a genomics name and a topology name. Update, 27 September 2026: separate quote for the relation is now supplied - the gate's renaming check gained the paper's own phrase, 'equivalent to the concepts of ... defined in', so the relation clause is quoted and anchored like any other. — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” | concept_edges[0] |
| relation | region —renamed-across-fields→ interiors — equivalent to the concepts of — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” — “region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships” | concept_edges[0] |
| weight | region —renamed-across-fields→ interiors — 0.85 — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” | concept_edges[0] |
| note | junction —renamed-across-fields→ boundaries — Same sentence as region/interiors: junction in SO is the concept named boundaries in topology. No separate quote for the relation, for the cue-list reason given on the region edge. — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” | concept_edges[1] |
| weight | junction —renamed-across-fields→ boundaries — 0.85 — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” | concept_edges[1] |
| note | kind_of —same-as→ is_a — A deliberate renaming inside one field: SO adopted kind_of for is_a to avoid the English ambiguity of 'is a'. — “kind_of relationships are synonymous with is_a relationships.” | concept_edges[2] |
| relation | kind_of —same-as→ is_a — are synonymous with — “kind_of relationships are synonymous with is_a relationships.” | concept_edges[2] |
| weight | kind_of —same-as→ is_a — 0.95 — “kind_of relationships are synonymous with is_a relationships.” | concept_edges[2] |
| weight | mRNA —is-a→ transcript — 0.97 — “For example, an mRNA is a kind_of transcript .” | concept_edges[3] |
| weight | enhancer —is-a→ regulatory_region — 0.97 — “Likewise an enhancer is a kind_of regulatory_region .” | concept_edges[4] |
| weight | exon —part-of→ transcript — 0.97 — “An exon , for example, is a part_of a transcript .” | concept_edges[5] |
| relation | controlled vocabulary —distinct-from→ ontology — an ontology is not merely — “One essential difference between a controlled vocabulary, such as the Feature Table, and an ontology is that an ontology is not merely a collection of predefined terms that are used to describe data.” — “an ontology is not merely a collection of predefined terms” | concept_edges[6] |
| weight | controlled vocabulary —distinct-from→ ontology — 0.93 — “One essential difference between a controlled vocabulary, such as the Feature Table, and an ontology is that an ontology is not merely a collection of predefined terms that are used to describe data.” | concept_edges[6] |
| relation | meronomy —is-a→ ontology — a particular kind of — “Much of this paper revolves around the part_of relationship because SO is largely a meronomy - a particular kind of ontology concerned with the relationships of parts to wholes.” — “SO is largely a meronomy - a particular kind of ontology” | concept_edges[7] |
| weight | meronomy —is-a→ ontology — 0.9 — “Much of this paper revolves around the part_of relationship because SO is largely a meronomy - a particular kind of ontology concerned with the relationships of parts to wholes.” | concept_edges[7] |
| replication | original | |
| no type for this | extensional mereology → set theory — EM operators are akin to set operators, but act on part_of relationships where set theory acts on kind_of relationships. — “These operators are akin to those of set theory, but whereas set theory makes use of an object's kind_of relationships, EM operators function on an object's part_of relationships.” | unhoused_relations[0] |
| limitation | The authors concede a criticism that the SO- and EM-based analyses may be too formal, when simpler approaches might have done the same. — “One criticism that might be justifiably leveled against the SO- and EM-based analyses presented here is that they are too formal, and that simpler approaches could have accomplished the same ends.” | limitations[0] |
| limitation | The analysis aims to show SO's utility for data management, not to draw conclusions about genome biology. — “These data afford many potential analyses, but as our motivation was primarily to demonstrate the practical utility of SO as a tool for data management, rather than comparative genomics per se , we have focused more on what exon-transcript-gene part-whole relationships have to say about the annotations themselves, than what the annotations have to say about the biology of the genome.” | limitations[1] |
| limitation | The absence of sequence-disjoint transcripts in the fly reflects FlyBase annotation practice, not biology. — “The lack of any sequence-disjoint transcripts in D. melanogaster , for example, is due to annotation practice; in fact, current FlyBase annotation practices forbid their creation, the reason being that any evidence for such transcripts is evidence for a new gene [ 28 ].” | limitations[2] |
| limitation | GenBank-to-SO conversion relies on a hard-coded mapping covering only the subset of Feature Table types in use. — “GenBank Feature Table types were converted to SO terms using the Bio::SeqFeature::Tools::TypeMapper class, which contains a hardcoded mapping for the subset of the GenBank Feature Table which is currently used in the genomes section of GenBank.” | limitations[3] |
finding · quantity · variable · definition · key-term — grounded in the full text| finding | Of alternatively spliced fly genes, none has a sequence-disjoint transcript, 275 have parts-disjoint and 2,664 overlapping transcripts. — “Of the alternatively spliced fly genes, none has a sequence-disjoint transcript, 275 have parts-disjoint transcripts, and 2,664 have overlapping transcripts, and 53 have both parts-disjoint and overlapping transcripts.” | content_tags.findings[0] |
| finding | Almost 39% of the exons of alternatively spliced genes are associated with alternatively spliced transcripts. — “As can be seen from Table 4 , despite the low frequency of alternatively spliced genes, a large fraction of their exons are associated with alternatively spliced transcripts - almost 39%.” | content_tags.findings[1] |
| finding | Over 95% of ALWAYS_FOUND exons in D. melanogaster are coding. — “Figure 4 also shows that most (> 95%) D. melanogaster ALWAYS_FOUND exons are coding.” | content_tags.findings[2] |
| finding | Alternative transcription in the fly may often reflect alternative-promoter usage, given the many unique 5' UTR exons. — “This fact suggests that alternative transcription in the fly may, in many cases, be a consequence of alternative-promoter usage and perhaps tissue-specific transcription start sites.” | content_tags.findings[3] |
| finding | EM-based classification schemes are simple to implement and capture important trends in annotation data. — “First, EM-based classification schemes are simple to implement, and second, they capture important trends in the data and provide a concise, natural, and meaningful overview of annotations in these genomes.” | content_tags.findings[4] |
| finding | SOFA has 171 locatable sequence features against 65 in the Feature Table. — “There are currently 171 locatable sequence features in SOFA compared to 65 of the Feature Table.” | content_tags.findings[5] |
| finding | 11 Feature Table terms are not included in SO. — “There are 11 terms in the Feature Table that are not included in SO.” | content_tags.findings[6] |
| finding | The Feature Table's relationships between terms are not formalized, so software must hard-code them. — “The relationships between the terms are not formalized; thus the interpretation of these relationships is left to the user to infer, and, more critically, must be hard-coded into software applications.” | content_tags.findings[7] |
| finding | An annotation making an intron part_of an mRNA is invalid under SO, since the ontology specifies no such relationship. — “For example, an annotation that asserts an intron to be part_of an mRNA would be invalid, as this relationship is not specified in the ontology (Figure 1 ).” | content_tags.findings[8] |
| quantity | 220 viral, 152 bacterial, 20 eukaryotic, 18 archeal genomes — — “At present, GenBank [ 1 ] houses 220 viral genomes, 152 bacterial genomes, 20 eukaryotic genomes and 18 archeal genomes.” | content_tags.quantities[0] |
| quantity | 13,539 genes; 2,886 alternatively spliced; 18,735 transcripts; 61,853 exons — — “The current version of FlyBase (5 August, 2004) contained 13,539 genes, (of which 10,653 have a single transcript and 2,886 are alternatively spliced), 18,735 transcripts and 61,853 exons.” | content_tags.quantities[1] |
| quantity | 171 vs 65 — — “There are currently 171 locatable sequence features in SOFA compared to 65 of the Feature Table.” | content_tags.quantities[2] |
| quantity | almost 39% — — “As can be seen from Table 4 , despite the low frequency of alternatively spliced genes, a large fraction of their exons are associated with alternatively spliced transcripts - almost 39%.” | content_tags.quantities[3] |
| definition | CDS — “For example, the term CDS is defined as a contiguous RNA sequence which begins with, and includes, a start codon and ends with, and includes, a stop codon .” | content_tags.definitions[0] |
| definition | region — “A region is a length of sequence such as an exon or a transposable_element .” | content_tags.definitions[1] |
| definition | junction — “A junction is the space between two bases, such as an insertion_site .” | content_tags.definitions[2] |
| definition | sequence-disjoint — “We term two disjoint transcripts sequence-disjoint if none of their exons shares any sequence in common with one another; and parts-disjoint if one or more of their exons overlap on the chromosome but have different exon boundaries.” | content_tags.definitions[3] |
| definition | SOFA — “This subset is known as the Sequence Ontology Feature Annotation, or SOFA.” | content_tags.definitions[4] |
| definition | Feature Table — “The Feature Table is a controlled vocabulary of terms describing sequence features and is used to describe the annotations distributed by these data banks.” | content_tags.definitions[5] |
| definition | meronomy — “Much of this paper revolves around the part_of relationship because SO is largely a meronomy - a particular kind of ontology concerned with the relationships of parts to wholes.” | content_tags.definitions[6] |
| definition | UNIQUE exons — “If an exon is the difference between all other transcripts, then it is only in one transcript; we term these UNIQUE exons.” | content_tags.definitions[7] |
| key-terms | Sequence Ontology, SOFA, Feature Table, part_of, kind_of, derives_from, extensional mereology, alternative splicing, genome annotation, GFF3 |
| concept | Sequence Ontology — a structured controlled vocabulary with a common set of terms and definitions for parts of a genomic annotation — “The goal of the Sequence Ontology (SO) project is to produce a structured controlled vocabulary with a common set of terms and definitions for parts of a genomic annotation, and to describe the relationships among them.” | concepts[0] |
| concept | SOFA — Sequence Ontology Feature Annotation — “This subset is known as the Sequence Ontology Feature Annotation, or SOFA.” | concepts[1] |
| concept | Feature Table — a controlled vocabulary of terms describing sequence features — “The Feature Table is a controlled vocabulary of terms describing sequence features and is used to describe the annotations distributed by these data banks.” | concepts[2] |
| concept | controlled vocabulary — not defined in this paper's own words; contrasted with an ontology, which also formally specifies the relationships between its terms — “One essential difference between a controlled vocabulary, such as the Feature Table, and an ontology is that an ontology is not merely a collection of predefined terms that are used to describe data.” | concepts[3] |
| concept | ontology — not merely a collection of predefined terms that are used to describe data — “One essential difference between a controlled vocabulary, such as the Feature Table, and an ontology is that an ontology is not merely a collection of predefined terms that are used to describe data.” | concepts[4] |
| concept | kind_of — kind_of relationships specify what something 'is' — “kind_of relationships specify what something 'is'.” | concepts[5] |
| concept | is_a — not defined in this paper's own words; not defined separately; the paper states kind_of relationships are synonymous with it — “kind_of relationships are synonymous with is_a relationships.” | concepts[6] |
| concept | derives_from — to denote relationships of process between two terms — “SO uses the term derives_from to denote relationships of process between two terms.” | concepts[7] |
| concept | part_of — part_of relationships pertain to meronomies; that is to say 'part-whole' relationships — “part_of relationships pertain to meronomies; that is to say 'part-whole' relationships.” | concepts[8] |
| concept | has_part — every part_of relationship logically implies the inverse has_part relationship between the two terms — “Instead, we say a transcript has_part exon .” | concepts[9] |
| concept | meronomy — a particular kind of ontology concerned with the relationships of parts to wholes — “Much of this paper revolves around the part_of relationship because SO is largely a meronomy - a particular kind of ontology concerned with the relationships of parts to wholes.” | concepts[10] |
| concept | extensional mereology — a formal theory of parts — “EM is a formal theory of parts: it defines the properties of the part_of relationship and then provides a set of operations (Table 2 ) that can be applied to those parts.” | concepts[11] |
| concept | region — a length of sequence such as an exon or a transposable_element — “A region is a length of sequence such as an exon or a transposable_element .” | concepts[12] |
| concept | junction — the space between two bases, such as an insertion_site — “A junction is the space between two bases, such as an insertion_site .” | concepts[13] |
| concept | interiors — not defined in this paper; named as the topological concept equivalent to region — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” | concepts[14] |
| concept | boundaries — not defined in this paper; named as the topological concept equivalent to junction — “The basic types in SOFA, from which other types are defined, are region and junction , equivalent to the concepts of interiors and boundaries defined in the field of topological relationships [ 21 ].” | concepts[15] |
| concept | CDS — a contiguous RNA sequence which begins with, and includes, a start codon and ends with, and includes, a stop codon — “For example, the term CDS is defined as a contiguous RNA sequence which begins with, and includes, a start codon and ends with, and includes, a stop codon .” | concepts[16] |
| concept | mRNA — an mRNA is a kind_of transcript — “For example, an mRNA is a kind_of transcript .” | concepts[17] |
| concept | transcript — not defined in this paper's own words; the parent term of mRNA and ncRNA — “For example, an mRNA is a kind_of transcript .” | concepts[18] |
| concept | exon — an exon is a part_of a transcript — “An exon , for example, is a part_of a transcript .” | concepts[19] |
| concept | gene — not defined in this paper's own words; “a transcript is a part_of” it — “In general, part_of relationships are transitive - an exon is a part_of a gene , because an exon is a part_of a transcript , and a transcript is a part_of a gene .” | concepts[20] |
| concept | enhancer — an enhancer is a kind_of regulatory_region — “Likewise an enhancer is a kind_of regulatory_region .” | concepts[21] |
| concept | regulatory_region — not defined in this paper's own words; the parent of enhancer — “Likewise an enhancer is a kind_of regulatory_region .” | concepts[22] |
| concept | sequence-disjoint — none of their exons shares any sequence in common with one another — “We term two disjoint transcripts sequence-disjoint if none of their exons shares any sequence in common with one another; and parts-disjoint if one or more of their exons overlap on the chromosome but have different exon boundaries.” | concepts[23] |
| concept | parts-disjoint — one or more of their exons overlap on the chromosome but have different exon boundaries — “We term two disjoint transcripts sequence-disjoint if none of their exons shares any sequence in common with one another; and parts-disjoint if one or more of their exons overlap on the chromosome but have different exon boundaries.” | concepts[24] |
| concept | GFF3 — uses SO terms and definitions to standardize the feature type described in each row of a file — “Indeed, the latest version, GFF3, uses SO terms and definitions to standardize the feature type described in each row of a file and SO terms as optional attributes to a feature.” | concepts[25] |
| concept | CHADO — a modular relational database schema for integrating molecular and genetic data — “CHADO [ 17 ] is a modular relational database schema for integrating molecular and genetic data and is part of the Generic Model Organism Database project (GMOD) [ 18 ], currently used by both FlyBase and TIGR.” | concepts[26] |
| concept | nonsense-mediated decay — not defined in this paper's own words; offered as the likely reason 3-prime untranslated exons are rarer — “First, regardless of exon class, most entirely untranslated exons are 5-prime exons; the lower frequency of 3-prime untranslated exons is perhaps due to nonsense-mediated decay [ 31 ], as the presence of splice junctions in a processed transcript downstream of its stop codon are believed to target that transcript for degradation.” | concepts[27] |
Full text — tagged
The reference list is not part of the text we hold for this paper. Our copy was extracted from the publisher's page and the bibliography did not survive that extraction, so the article below ends before its references. Nothing has been removed by us.
The Sequence Ontologyterm: a tool for the unification of genome annotationsterm·key Abstract The goal of the Sequence Ontologyterm (SO) project is to produce a structured controlled vocabularyterm·mth with a common set of terms and definitions for parts of a genomic annotation, and to describe the relationships among them. Details of SO construction, design and use, particularly with regard to part-whole relationships are discussed and the practical utility of SO is demonstrated for a set of genome annotationsterm·key from Drosophila melanogaster .
Background Why a sequence ontologyterm is needed Genomic annotations are the focal point of sequencing, bioinformatics analysis, and molecular biology. They are the means by which we attach what we know about a genome to its sequence. Unfortunately, biological terminology is notoriously ambiguous; the same word is often used to describe more than one thing and there are many dialects. For example, does a coding sequence (CDSterm·dom) contain the stop codon or is the stop codon part of the 3'-untranslated regionterm·dom (3' UTR)? There really is no right or wrong answer to such questions, but consistency is crucial when attempting to compare annotations from different sources, or even when comparing annotations performed by the same group over an extended period of time.
At present, GenBank [ 1 ] houses 220 viral genomes, 152 bacterial genomes, 20 eukaryotic genomes and 18 archeal genomes. Other centers such as The Institute for Genomic Research (TIGR) [ 2 ] and the Joint Genome Institute (JGI) [ 3 ] also maintain and distribute annotations, as do many model organism databases such as FlyBase [ 4 ], WormBase [ 5 ], The Arabidopsis Information Resource (TAIR) [ 6 ] and the Saccharomyces Genome Database (SGD) [ 7 ]. Each of these groups has their own databases and many use their own data model to describe their annotations. There is no single place at which all sets of genome annotationsterm·key can be found, and several sets are informally mirrored in multiple locations, leading to location-specific version differences. This can make it hazardous to exchange, combine and compare annotation data. Clearly, if genomic annotations were always described using the same language, then comparative analysis of the wealth of information distributed by these institutions would be enormously simplified: Hence the Sequence Ontologyterm (SO) project. SO began 2 years ago, when a group of scientists and developers from the model organism databases - FlyBase, WormBase, Ensembl, SGD and MGI - came together to collect and unify the terms they used in their sequence annotation.
The Goal of the SO is to provide a standardized set of terms and relationships with which to describe genomic annotations and provide the structure necessary for automated reasoning over their contents, thereby facilitating data exchange and comparative analyses of annotations. SO is a sister project to the Geneterm·dom Ontologyterm·mth (GO) [ 8 ] and is part of the Open Biomedical Ontologies (OBO) project [ 9 ]. The scope of the SO project is the description of the features and properties of biological sequence. The features can be located in base coordinates, such as geneterm·dom and intron , and the properties of these features describe an attribute of the feature; for example, a geneterm·dom may be maternally_imprinted .
SO terminology and format Like other ontologies, SO consists of a controlled vocabularyterm·mth of terms or concepts and a restricted set of relationships between those terms. While the concepts and relationships of the sequence ontologyterm make it possible to describe precisely the features of a genomic annotation, discussions of them can lead to much lexical confusion, as some of the terms used by SO are also common words; thus we begin our description of SO with a discussion of its naming conventions, and adhere to these rules throughout this document.
Wherever possible, the terms used by SO to describe the parts of an annotation are those commonly used in the genomics community. In some cases, however, we have altered these terms in order to render them more computer-friendly so that users can create software classes and variables named after them. Thus, term names do not include spaces; instead, underscores are used to separate the words in phrases. Numbers are spelled out in full, for example five_prime_UTR , except in cases where the number is part of the accepted name. If the commonly used name begins with a number, such as 28S RNA, the stem is moved to the front - for example, RNA_28S . Symbols are spelled out in full where appropriate, for example, prime , plus , minus ; as are Greek letters. Periods, points, slashes, hyphens, and brackets are not allowed. If there is a common abbreviation it is used as the term name, and case is always lower except when the term is an acronym, for example, UTR and CDSterm·dom . Where there are differences in the accepted spelling between English and US usage, the US form is used.
Synonyms are used to record the variant term names that have the same meaning as the term. They are used to facilitate searching of the ontologyterm·mth. There is no limit to the number of synonyms a term can have, nor do they adhere to SO naming conventions. They are, however, still lowercase except when they are acronyms.
Throughout the remainder of this document, the terms from SO are highlighted in italics and the names of relationships between the terms are shown in bold. The terms are always depicted exactly as they appear in the ontologyterm·mth. The names of EM operators are underlined.
SO, SOFAterm, and the feature tableterm To facilitate the use of SO for the markup of geneterm·dom annotation data, a subset of terms from SO consisting of some of those terms that can be located onto sequence has been selected; this condensed version of SO is especially well suited for labeling the outputs of automated or semi-automated sequence annotation pipelines. This subset is known as the Sequence Ontologyterm Feature Annotation, or SOFAterm.
SO, like GO, is an 'open source' ontologyterm·mth. New terms, definitions, and their location within the ontologyterm·mth are proposed, debated, and approved or rejected by an open group of individuals via a mailing list. SO is maintained in OBO format and the current version can be downloaded from the CVS repository of the SO website [ 10 ]. For development purposes, SOFAterm was stabilized and released (in May 2004) for at least 12 months to allow development of software and formats. SO is a directed acyclic graph (DAG), and can be viewed using the editor for OBO files, OBO-Edit [ 11 ].
The terms describing sequence features in SO and SOFAterm are richer than those of the Feature Tableterm [ 12 ] of the three large genome databanks: GenBank [ 1 ], EMBL [ 13 ] and the DNA Data Bank of Japan (DDBJ) [ 14 ]. The Feature Tableterm is a controlled vocabularyterm·mth of terms describing sequence features and is used to describe the annotations distributed by these data banks. The Feature Tableterm does provide a grouping of its terms for annotation purposes, based on the degree of specificity of the term. The relationships between the terms are not formalized; thus the interpretation of these relationships is left to the user to infer, and, more critically, must be hard-coded into software applications. Most of the terms in the Feature Tableterm map directly to terms in SO, although the term names may have been changed to fit SO naming conventions. In general, SO contains a more extensive set of features for detailed annotation. There are currently 171 locatable sequence features in SOFAterm compared to 65 of the Feature Tableterm. There are 11 terms in the Feature Tableterm that are not included in SO. These terms fall into two categories: remarks and immunological features, both of which have been handled slightly differently in SO. A mapping between SO and the Feature Tableterm is available from the SO website [ 10 ].
Database schemas, file formats and SO SO is not a database schema, nor is it a file format; it is an ontologyterm·mth. As such, SO transcends any particular database schema or file format. This means it can be used equally well as an external data-exchange format or internally as an integral component of a database.
The simplest way to use SO is to label data destined for redistribution with SO terms and to make sure that the data adhere to the SO definition of the data type. Accordingly, SO provides a human-readable definition for each term that concisely states its biological meaning. Usually the definitions are drawn from standard authoritative sources such as The Molecular Biology of the Cell [ 15 ], and each definition contains a reference to its source. Defining each term in such a way is important as it aids communication and minimizes confusion and disputes as to just what data should consist of. For example, the term CDSterm·dom is defined as a contiguous RNA sequence which begins with, and includes, a start codon and ends with, and includes, a stop codon . According to SO, the sequence of a three_prime_utr does not contain the stop_codon - and files with such sequences are SO-compliant; files of three_prime_utr containing stop_codons are not. This is a trivial example, illustrating one of the simplest use cases, but it does demonstrate the power of SO to put an end to needless negotiations between parties as to the details of a data exchange. This aspect of SO is especially well suited for use with the generic feature format (GFF) [ 16 ]. Indeed, the latest version, GFF3term, uses SO terms and definitions to standardize the feature type described in each row of a file and SO terms as optional attributes to a feature.
SO can also be employed in a much more sophisticated manner within a database. CHADOterm [ 17 ] is a modular relational database schema for integrating molecular and genetic data and is part of the Generic Model Organism Database project (GMOD) [ 18 ], currently used by both FlyBase and TIGR. The CHADOterm relational schema is extremely flexible, and is centered on genomic features and their relationships, both of which are described using SO terms. This use of SO ensures that software that queries, populates and exports data from different CHADOterm databases is interoperable, and thus greatly facilitates large-scale comparisons of even very complex genomics data.
Like GFF3term, Chaos-XML [ 19 ] is a file format that uses SO to label and structure data, but it is more intimately tied to the CHADOterm project than is GFF3term. Chaos-XML is a hierarchical XML mapping of the CHADOterm relational schema. Annotations are represented as an ontology-typed feature graph. The central concept of Chaos-XML is the sequence-feature, which is any sequence entity typed by SO. The features are interconnected via feature relationship elements, whereby each relationship connects a subject feature and an object feature. Features are located via featureloc elements which use interbase (zero-based) coordinates. Chaos-XML and CHADOterm are richer models than GFF3term in that feature_relationships are typed, and a more sophisticated location model is used. Chaos-XML is the substrate of a suite of programs called Comparative Genomics Library (CGL), pronounced 'seagull' [ 20 ], which we have used for the analyses presented in our Results section.
The basic types in SOFAterm, from which other types are defined, are regionterm·dom and junctionterm·dom , equivalent to the concepts of interiorsterm·dom and boundariesterm·dom defined in the field of topological relationships [ 21 ]. A regionterm·dom is a length of sequence such as an exonterm·dom or a transposable_element . A junctionterm·dom is the space between two bases, such as an insertion_site . Building on these basic data types, SOFAterm can be used to describe a wide range of sequence features. Raw sequence features such as assembly components are captured by terms like contig and read . Analysis features, defined by the results of sequence-analysis programs such as BLAST [ 22 ] are captured by terms such as nucleotide_match . Geneterm·dom models can be defined on the sequence using terms like geneterm·dom , exonterm·dom and CDSterm·dom . Variation in sequence is captured by subtypes of the term sequence_variant . These terms have multiple parentages with either regionterm·dom or junctionterm·dom. SOFAterm (and SO) can also be used to describe many other sequence features, for example, repeat , reagent , remark . Thus, SOFAterm together with GFF3term or Chaos-XML provide an easy means by which parties can describe, standardize, and document the data they distribute and exchange.
The SO and SOFAterm controlled vocabularies can be used for de novo annotation. Several groups including SGD and FlyBase now use either SO or SOFAterm terms in their annotation efforts. SO is not restricted to new annotations, however, and may be applied to existing annotations. For example, annotations from GenBank may be converted into SO-compliant formats using Bioperl [ 23 ] (see Materials and methods).
SO relationships One essential difference between a controlled vocabularyterm·mth, such as the Feature Tableterm, and an ontologyterm·mth is that an ontologyterm·mth is not merely a collection of predefined terms that are used to describe data. Ontologies also formally specify the relationships between their terms. Labeling data with terms from an ontologyterm·mth makes the data a substrate for software capable of logical inference. The information necessary for making logical inferences about data resides in the class designations of the relationships that unite terms within SO. We detail this aspect of the ontologyterm·mth below. For purposes of reference, a section of SO illustrating the various relationships between some of its terms is shown in Figure 1 .
Currently, SO uses three basic kinds of relationship between its terms: kind_ofterm·mth , derives_fromterm·mth , and part_ofterm·mth . These relationships are defined in the OBO relationship types ontologyterm·mth [ 24 ]. kind_ofterm·mth relationships specify what something 'is'. For example, an mRNAterm·dom is a kind_ofterm·mth transcriptterm·dom . Likewise an enhancerterm·dom is a kind_ofterm·mth regulatory_regionterm·dom . kind_ofterm·mth relationships are valid in only one direction. Hence, a regulatory_regionterm·dom is not a kind_ofterm·mth enhancerterm·dom . One consequence of the directional nature of kind_ofterm·mth relationships is that their transitivity is hierarchical - inferences as to what something 'is' proceed from the leaves towards the root of the ontologyterm·mth. For example, an mRNAterm·dom is a kind_ofterm·mth processed_transcriptterm·dom AND a processed_transcriptterm·dom is a kind_ofterm·mth transcriptterm·dom . Thus, an mRNAterm·dom is a kind_ofterm·mth transcriptterm·dom . kind_ofterm·mth relationships are synonymous with is_aterm·mth relationships. We adopted the ' kind_ofterm·mth ' notation to avoid the lexical confusion often encountered when describing relationships, as the phrase 'is a' is often used in conjunction with another relationships in English - for example 'is a part_ofterm·mth'.
SO uses the term derives_fromterm·mth to denote relationships of process between two terms. For example, an EST derives_fromterm·mth an mRNAterm·dom . derives_fromterm·mth relationships imply an inverse relationship; derives . Note that although a polypeptide derives_fromterm·mth an mRNAterm·dom , a polypeptide cannot be derived from an ncRNA (non-coding RNA), because no derives_fromterm·mth relationship unites these two terms in the ontologyterm·mth. This fact illustrates another important aspect of how SO handles relationships: children always inherit from parents but never from siblings. An ncRNA is a kind_ofterm·mth transcriptterm·dom as is an mRNAterm·dom . Labeling something as a transcriptterm·dom implies that it could possibly produce a polypeptide ; labeling that same entity with the more specific term ncRNA rules that possibility out. Thus, a file that contained ncRNAs and their polypeptides would be semantically invalid.
part_ofterm·mth relationships pertain to meronomies; that is to say 'part-whole' relationships. An exonterm·dom , for example, is a part_ofterm·mth a transcriptterm·dom . part_ofterm·mth relationships are not valid in both directions. In other words, while an exonterm·dom is a part_ofterm·mth a transcriptterm·dom , a transcriptterm·dom is not a part_ofterm·mth an exonterm·dom . Instead, we say a transcriptterm·dom has_partterm·mth exonterm·dom . SO does not explicitly denote whole-part relationships, as every part_ofterm·mth relationship logically implies the inverse has_partterm·mth relationship between the two terms.
Transitivity is a more complicated issue with regards to part-whole relationships than it is for the other relationships in SO. In general, part_ofterm·mth relationships are transitive - an exonterm·dom is a part_ofterm·mth a geneterm·dom , because an exonterm·dom is a part_ofterm·mth a transcriptterm·dom , and a transcriptterm·dom is a part_ofterm·mth a geneterm·dom . Not every chain of part-whole relationships, however, obeys the principle of transitivity. This is because parts can be combined to make wholes according to different organizing principles. Winston et al . [ 25 ] have described six different subclasses of the part-whole relationship, based on the following three properties: configuration , whether the parts have a structural or functional role with respect to one another or the whole they form; substance , whether the part is made of the same stuff as the whole (homomerous or heteromerous); and invariance , whether the part can be separated from the whole. These six relations and their associated part_ofterm·mth subclasses are detailed in Table 1 .
Winston et al . [ 25 ] argue that there is transitivity across a series of part_ofterm·mth relationships only if they all belong to the same subclass. In other words, an exonterm·dom can only be part_ofterm·mth a geneterm·dom , if an exonterm·dom is a component_part_ofterm·mth a transcriptterm·dom , and a transcriptterm·dom is component_part_ofterm·mth a geneterm·dom . If, however, the two statements contain different types of part_ofterm·mth relationship, then transitivity does not hold.
By addressing the vague English term 'part of' in this way, Winston et al. solve many of the problems associated with reasoning across part_ofterm·mth relationships; thus, we are adopting their approach with SO. The parts contained in the sequence ontologyterm are mostly of the type component_part_ofterm·mth such as exonterm·dom is a part_ofterm·mth transcriptterm·dom , although there are a few occurrences of member_part_ofterm·mth such as read is a part_ofterm·mth contig .
SO's relationships facilitate software design and bioinformatics research Genomic annotations are substrates for a multitude of software applications. Annotations, for example, are rendered by graphical viewers, or, as another example, their features are searched and queried for purposes of data validation and genomics research. Using an ontologyterm·mth for sequence annotation purposes offers many advantages over the traditional Feature Tableterm approach. Because controlled vocabularies do not specify the relationships that obtain between their terms, using the Feature Tableterm has meant that relationships between features have had to be hard-coded in software applications themselves; consequently, adding a new term to the Feature Tableterm and/or changing the details of the relationships that obtain between its terms has meant revising every software application that made use of the Feature Tableterm. Ontologies mitigate this problem as all of the knowledge about terms and their relationships to one another is contained in the ontologyterm·mth, not the software.
SO-compliant software need only be provided with an updated version of the ontologyterm·mth, and everything else will follow automatically. This is because SO-compliant software need not hard-code the fact that a tRNA is a kind_ofterm·mth transcriptterm·dom ; it need merely know that kind_ofterm·mth relationships are transitive and hierarchical and be capable of internally navigating the network of relationships specified by the ontologyterm·mth (see Figure 1 ) in order to logically infer this fact. This means that every time a new form of ncRNA is discovered, and added to SO, all SO-compliant software applications will automatically be able to infer that any data labeled with that new term is a kind_ofterm·mth transcriptterm·dom. This means that existing graphical viewers will render those data with the appropriate transcriptterm·dom glyph, and validation and query tools will automatically deal with this new data-type in a coherent fashion. Placing the biological knowledge in the ontologyterm·mth rather than in the software means that the ontologyterm·mth and the software that uses it can be developed, revised, and extended independently of one another. Thus ontologies offer the bioinformatics programming community significant opportunities as regards software design and the speed of the development cycle. Using an ontologyterm·mth does, however, mean that software applications must meet certain professional standards; namely, they must be capable of parsing an OBO file and navigating the network of relationships that constitute the ontologyterm·mth, but these are minimal hurdles.
SO facilitates bioinformatics research in ways that reach far beyond its utility as regards software design. For example, SO's kind_ofterm·mth relationships provide a subsumption hierarchy, or classification system for its terms. This added depth of knowledge greatly improves the searching and querying capabilities of software using SO. The ontologyterm·mth's higher-level terms may be used to query via inference, even if they are never used for annotation. We recommend that annotators label their data using terms corresponding to terminal nodes in the ontologyterm·mth. Transcriptsterm·dom, for example, might be annotated using terms such as mRNAterm·dom , tRNA , and rRNA (see Figure 1 ). Note that doing so means that if, for example, non-coding RNA sequences are required for some subsequent analysis, then SO-compliant software tools can locate annotations labelled with the subtypes of ncRNA, and retrieve tRNAs and rRNAs to the exclusion of mRNAsterm·dom, even though these data have not been explicitly labelled with the term ncRNA . Thus, many analyses become easy, for example, how many ncRNAs are annotated in H. sapiens ? Of these what percent have more than one exonterm·dom? Are any maternally imprinted? Moreover, using SO as part of a database schema ensures that such questions 'mean' the same thing in different databases.
SO also greatly facilitates the automatic validation of annotation data, as the relationships implied by an annotation can be compared to the allowable relationships specified in the ontologyterm·mth. For example, an annotation that asserts an intron to be part_ofterm·mth an mRNAterm·dom would be invalid, as this relationship is not specified in the ontologyterm·mth (Figure 1 ). On the other hand, an annotation that asserted that an UTR sequence was part_ofterm·mth mRNAterm·dom would be valid (Figure 1 ). This makes possible better quality control of annotation data, and makes it possible to check existing annotations for such errors when converting them to a SO-compliant format such as GFF3term.
To summarize, by identifying the set of relationships between terms that are possible, we are also specifying the inferences that can be drawn from these relationships: that is, the software operations that can be carried out over the data. As a consequence, software is easier to maintain, SO can easily be extended to embrace new biological knowledge, quality controls can be readily implemented, and software to mine data can be written so as to be very flexible.
EM operators and SO SO also enables some modes of analyses of genomics data that are completely new to the field. One such class of analyses involves the use of extensional mereologyterm·mth (EM) operators to ask questions about geneterm·dom parts. Although new to genomics, EM operators are well known in the field of ontologyterm·mth, where they provide a basis for asking and answering questions pertaining to how parts are distributed within and among different wholes (reviewed in [ 26 , 27 ]). These operators are usually applied to studies of how parts are shared between complex wholes - such as different models of automobiles or personal computers - for the purpose of optimizing manufacturing procedures. Below we explain how these same operators can be applied to the analyses of genomics data. Although these operators, difference and overlap , share the same name as topological operators, they are different as they function on the parts of an object, not on its geometric coordinate space. The topological operators, regarding the coincidence of edges and interiorsterm·dom - equality, overlap, disjointedness, containment and coverage of spatial analysis [ 21 ] - may also be applied to biological sequence.
EM is a formal theory of parts: it defines the properties of the part_ofterm·mth relationship and then provides a set of operations (Table 2 ) that can be applied to those parts. These operators are akin to those of set theory, but whereas set theory makes use of an object's kind_ofterm·mth relationships, EM operators function on an object's part_ofterm·mth relationships. Only wholes and their 'proper parts' are legitimate substrates for EM operations. Proper parts are those parts that satisfy three self-evident criteria: first, nothing is a proper part of itself (a proper part is part of but not identical to the individual or whole); second, if A is a proper part of B then the B is not a part of A ; third, if A is a part of B and B is a part of C then A is a part of C .
Note that the third criterion of proper parts is that they obey the rule of transitivity. As we discussed earlier, not all part_ofterm·mth relationships are transitive. Accordingly, we have restricted our analyses (see Results and discussion) to component parts (Table 2 ).
Figure 2 illustrates the effects of applying EM operations to analyze the relationships ' transcriptterm·dom is a part_ofterm·mth geneterm·dom' and ' exonterm·dom is a part_ofterm·mth transcriptterm·dom '. The EM operations overlap and disjoint pertain to relationships between transcriptsterm·dom, whereas difference and binary product pertain to exonsterm·dom. Two transcriptsterm·dom overlap if they share one or more exonterm·dom in common. Two transcriptsterm·dom are disjoint if they do not share any exonsterm·dom in common. The exonsterm·dom shared between two overlapping transcriptsterm·dom are the binary product of the two transcriptsterm·dom, and the exonsterm·dom not shared in common comprise the difference between the two transcriptsterm·dom. The binary sum of two transcriptsterm·dom is simply the sum of their parts.
One key feature of EM operations is that they operate in 'identifier space' rather than 'coordinate space'. Two transcriptsterm·dom overlap only if they share a part in common rather than if their genomic coordinates overlap. Thus, two transcriptsterm·dom may be disjoint even if their exonsterm·dom partially overlap one another. This is one way in which EM analyses differ from standard bioinformatics analyses, and it has some interesting repercussions. This is particularly so with regard to modes of alternative splicingterm·key, as each of the EM operations suggests a distinct category by means of which two alternatively spliced transcriptsterm·dom can be related to one another. We further explore the potential of these operations to classify alternative transcriptsterm·dom and their exonsterm·dom below.
Results and discussion As part of a pilot project to evaluate the practical utility of SO as a tool for data management and analysis, we have used SO to name and enumerate the parts of every protein-coding annotation in the D. melanogaster genome. Doing so has allowed us to compare annotations with respect to their parts, for example, number of exonsterm·dom, amount of UTR sequence, and so on.
These data afford many potential analyses, but as our motivation was primarily to demonstrate the practical utility of SO as a tool for data management, rather than comparative genomics per se , we have focused more on what exon-transcript-gene part-whole relationships have to say about the annotations themselves, than what the annotations have to say about the biology of the genome. Accordingly, we have used EM-operators to characterize the annotations with respect to their parts, especially with regard to alternative splicingterm·key. The current version of FlyBase (5 August, 2004) contained 13,539 genesterm·dom, (of which 10,653 have a single transcriptterm·dom and 2,886 are alternatively spliced), 18,735 transcriptsterm·dom and 61,853 exonsterm·dom.
An EM-based scheme for classifying alternatively spliced genesterm·dom As we had characterized the parts of the annotations using SO, we were able to employ the EM operators over these parts. This proved to be a natural way to explore the relative complexity of alternative splicingterm·key, as the alternatively spliced transcriptsterm·dom have different combinations of parts: that is, exonsterm·dom. We grouped alternatively spliced transcriptsterm·dom into two classes. An alternatively spliced geneterm·dom will contain overlapping transcriptsterm·dom if at least one of its exonsterm·dom is shared between two of its transcriptsterm·dom, and will have disjoint transcriptsterm·dom if one of its transcriptsterm·dom shares no exonsterm·dom in common with any other transcriptterm·dom of that geneterm·dom. For the purposes of this analysis, we further classified disjoint transcriptsterm·dom as sequence-disjointterm·dom and parts-disjointterm·dom . We term two disjoint transcriptsterm·dom sequence-disjointterm·dom if none of their exonsterm·dom shares any sequence in common with one another; and parts-disjointterm·dom if one or more of their exonsterm·dom overlap on the chromosome but have different exonterm·dom boundariesterm·dom. Note that the three operations are pairwise, and thus not mutually exclusive. To see why this is, imagine a geneterm·dom having three transcriptsterm·dom, A, B, and C. Obviously, transcriptterm·dom A can be disjoint with respect to B, but overlap with respect to C. Thus, we can speak of a geneterm·dom as having both disjoint and overlapping transcriptsterm·dom.
The relative numbers of disjoint and overlapping transcriptsterm·dom in a genome says something about the relative complexity of alternative splicingterm·key in that genome. A geneterm·dom may have any combination of these types of disjoint and overlapping transcriptsterm·dom, so we created a labeling system consisting of the seven possible combinations. We did this by asking three EM-based questions about the relationships between pairs of a geneterm·dom's transcriptsterm·dom: How many pairs are there of sequence-disjointterm·dom transcriptsterm·dom? How many pairs are there of parts-disjointterm·dom transcriptsterm·dom? How many pairs are there of overlapping transcriptsterm·dom? Doing so allowed us to place that geneterm·dom into one of seven classes with regards to the properties of its alternatively spliced transcriptsterm·dom. We also kept track of the number of times each of the three relationships held true for each pair combination. For example, a geneterm·dom having two transcriptsterm·dom that are parts-disjointterm·dom with respect to one another would be labeled 0:1:0. Keeping track of the number of transcriptterm·dom pairs falling into each class provides an easy means to prioritize them for manual review. These results are summarized in Figure 3 .
Of the alternatively spliced fly genesterm·dom, none has a sequence-disjointterm·dom transcriptterm·dom, 275 have parts-disjointterm·dom transcriptsterm·dom, and 2,664 have overlapping transcriptsterm·dom, and 53 have both parts-disjointterm·dom and overlapping transcriptsterm·dom. The percentage of D. melanogaster genesterm·dom in each category is shown in Table 3 . Most alternatively spliced genesterm·dom contain at least one pair of overlapping transcriptsterm·dom. These data also have something to say about the ways in which research and management issues are intertwined with one another with respect to genome annotationterm·key, as some aspects of these data are clearly attributable to annotation practice. The lack of any sequence-disjointterm·dom transcriptsterm·dom in D. melanogaster , for example, is due to annotation practice; in fact, current FlyBase annotation practices forbid their creation, the reason being that any evidence for such transcriptsterm·dom is evidence for a new geneterm·dom [ 28 ]. This is not true for all genomic annotations. Annotations converted from the genomes division of GenBank to a SO-compliant form, were subjected to EM analysis, and inspection of the corresponding gene-centric annotations provided by Entrez Geneterm·dom [ 29 ] revealed examples of genesterm·dom that fall into each of the seven categories. Some of these annotations are shown in Figure 3 .
The frequencies of genesterm·dom that fall into each of the seven classes shown in Table 3 provides a concise summary of genome-wide trends in alternative splicingterm·key in the fly. This EM-based classification schema, when applied to many model organisms, from many original sources, makes very apparent the magnitude of the practical challenges that surround decentralized annotation, and the distribution and redistribution of annotations. Certainly, they highlight the need for data-management tools such as SO to assist the community in enforcing biological constraints and annotation standards. Only then will comparative genomic analyses show their full power.
Exonsterm·dom as alternative parts of transcriptsterm·dom EM-operators can also be used to classify the exonsterm·dom of alternatively spliced genesterm·dom. Exonsterm·dom shared between two transcriptsterm·dom comprise the binary product of the two transcriptsterm·dom; whereas those exonsterm·dom present in only one of the transcriptsterm·dom constitute their difference (see Table 2 and Figure 2 for more information). These basic facts suggest a very simple, three-part classification system. If an exonterm·dom is the difference between all other transcriptsterm·dom, then it is only in one transcriptterm·dom; we term these UNIQUE exonsterm·def. If an exonterm·dom is the difference of some transcriptsterm·dom, and the binary product of others, it is in a fraction of transcriptsterm·dom; we term these SOMETIMES_FOUND exonsterm·dom. And, if an exonterm·dom is the binary product of all combinations of transcriptsterm·dom, then it must be in all transcriptsterm·dom; we term such exonsterm·dom ALWAYS_FOUND exonsterm·dom. Classifying exonsterm·dom in this way allows us to look more closely at alternative splicingterm·key from the exonterm·dom's perspective.
As can be seen from Table 4 , despite the low frequency of alternatively spliced genesterm·dom, a large fraction of their exonsterm·dom are associated with alternatively spliced transcriptsterm·dom - almost 39%. A sizable proportion of SOMETIMES_FOUND and ALWAYS_FOUND exonsterm·dom are coding exonsterm·dom in some of the transcriptsterm·dom and entirely untranslated exonsterm·dom in others. In some cases, this is due to actual biology: some transcriptsterm·dom in D. melanogaster are known to produce more than one protein (see, for example [ 30 ]). In other cases, this situation appears to be a result of best attempts on the part of annotators to interpret ambiguous supporting evidence; in yet others the supporting data sometimes unambiguously points to patterns of alternative splicingterm·key that would seem to produce transcriptsterm·dom destined for nonsense-mediated decayterm·dom [ 31 ]. Whatever the underlying cause, these exonsterm·dom, like the N:0:0 class annotations, should be subjected to further investigation.
To investigate these conclusions in more detail, we further examined each exonterm·dom with respect to its EM-based class and its coding and untranslated portions. These results are shown Figure 4 , and naturally extend the analyses presented in Table 4 . First, regardless of exonterm·dom class, most entirely untranslated exonsterm·dom are 5-prime exonsterm·dom; the lower frequency of 3-prime untranslated exonsterm·dom is perhaps due to nonsense-mediated decayterm·dom [ 31 ], as the presence of splice junctionsterm·dom in a processed transcriptterm·dom downstream of its stop codon are believed to target that transcriptterm·dom for degradation. A second point made clear by the data in Table 4 is that alternatively spliced genesterm·dom of D. melanogaster are highly enriched for 5-prime untranslated exonsterm·dom compared with single-transcript genesterm·dom. Most of these exonsterm·dom belong to ALWAYS_FOUND; thus, there seems to be a strong tendency in D. melanogaster for alternative transcriptsterm·dom to begin with a unique 5' UTR regionterm·dom. This fact suggests that alternative transcription in the fly may, in many cases, be a consequence of alternative-promoter usage and perhaps tissue-specific transcription start sites. The high percentage of untranslated 5-prime UNIQUE exonsterm·def in D. melanogaster may also be a consequence of the large numbers of 5' ESTs that have been sequenced in the fly [ 32 ].
Figure 4 also shows that most (> 95%) D. melanogaster ALWAYS_FOUND exonsterm·dom are coding. This makes sense, as it seems likely that one reason for an exonterm·dom's inclusion in every one of a geneterm·dom's alternative transcriptsterm·dom is that it encodes a portion of the protein essential for its function(s).
As with our previous analyses of alternative transcriptsterm·dom, our analyses of alternatively transcribed exonsterm·dom also illustrate the ways in which basic biology and annotation-management issues intersect one another. The fact that most ALWAYS_FOUND exonsterm·dom are entirely coding, for example, may have something important to say about which parts of a protein are essential for its function(s). Whereas the over-abundance of un-translated UNIQUE exonsterm·def probably has more to say about the resources available to, and the protocols used by, the annotation project than it does about biology. Such considerations make it clear that the evidence used to produce an annotation is an essential part of the annotation. In this regard SO has much to offer, as it provides a rational means by which to manage annotation evidence in the context of gene-parts and the relations between those parts.
Conclusion We have sought to provide an introduction to the SO and justify why its use to unify genomic annotations is beneficial to the model organism community. We illustrate some of the ways in which SO can be used to analyze and manage annotations. Relationships are an essential component of SO, and understanding their role within the ontologyterm·mth is a basic prerequisite for using SO in an intelligent fashion. Much of this paper revolves around the part_ofterm·mth relationship because SO is largely a meronomyterm·mth - a particular kind of ontologyterm·mth concerned with the relationships of parts to wholes. Extensional mereologyterm·mth (EM) is an area that is largely new to bioinformatics for which there are several excellent reference works available [ 26 , 27 , 33 ], and even a cursory examination of these texts will make it clear that EM has much to offer bioinformatics.
Using all of the relationships in SO allows us to automatically draw logical conclusions about data that has been labelled with SO terms and thereby provide useful insights into the underlying annotations. We have shown how SO, together with the EM-based operations it enables, can be used to standardize, analyze, and manage genome annotationsterm·key.
Given any standardized set of genome annotationsterm·key described with SO these annotations can then be rigorously characterized. For our pilot analyses, we focused on alternatively transcribed genesterm·dom and their exonsterm·dom, and explored the potential of EM-operators to classify and characterize them. We believe that the results of these analyses support two principle conclusions. First, EM-based classification schemes are simple to implement, and second, they capture important trends in the data and provide a concise, natural, and meaningful overview of annotations in these genomes.
One criticism that might be justifiably leveled against the SO- and EM-based analyses presented here is that they are too formal, and that simpler approaches could have accomplished the same ends. As our discussion of part_ofterm·mth relationships made clear, however, reasoning across diverse types of parts is a complicated process; ad-hoc approaches will not suffice where the data are complex. The more formal approach afforded by SO means that analyses can be easily be extended beyond the domain of transcriptsterm·dom and exonsterm·dom to include many other geneterm·dom parts and relationships as well - including evidence. It seems clear that over the next few years both the number and complexity of annotations will increase, especially with regard to the diversity of their parts. Drawing valid conclusions from comparisons of these annotations will prove challenging. That SO has much to offer such analyses is indisputable.
SO and SOFAterm provide the model organism community with a means to unify the semantics of sequence annotation. This facilitates communication within a group and between different model organism groups. Adopting SO terminology to type the features and properties of sequence will provide both the group and the community the advantages of a common vocabulary, to use for sharing and querying data and for automated reasoning over large amounts of sequence data.
Materials and methods SO and SOFAterm have been built and are maintained using the ontology-editing tool OBO-Edit. The ontologies are available at [ 34 ].
The FlyBase D. melanogaster [ 35 ] data was derived from the GadFly [ 36 ] relational database and converted to Chaos-XML using the Bio-chaos tools. The features were annotated to the deepest concept in the ontologyterm·mth possible, given the available information. For example, the degree of information in annotations was sufficiently deep to describe the transcriptterm·dom features with the type of RNA such as mRNAterm·dom , or tRNA . It was therefore possible to restrict the analysis to given types of transcriptterm·dom. CGL tools were used to validate each of the annotations, iterate through the genesterm·dom and query the features. EM-operators were applied to the part features of genesterm·dom.
Other organism data was derived from the genomes section of GenBank [ 37 ]. GenBank flat files were converted to SO-compliant Chaos-XML using the script cx-genbank2chaos.pl (available from [ 19 ]) and BioPerl [ 23 ]. The BioPerl GenBank parser, Bio::SeqIO::genbank was used to convert GenBank flat files to Bioperl SeqFeature objects. Feature_relationships between these objects were inferred from location information using the Bioperl Bio::SeqFeature::Tools::Unflattener code. GenBank Feature Tableterm types were converted to SO terms using the Bio::SeqFeature::Tools::TypeMapper class, which contains a hardcoded mapping for the subset of the GenBank Feature Tableterm which is currently used in the genomes section of GenBank. The same Perl class was used to type the feature_relationships according to SO relationship types. The EM analysis was performed over the Chaos-XML annotations using the CGL suite of modules to iterate over the parts of each geneterm·dom.