| bio-0.4: A bioinformatics library | Source code | Contents | Index

Bio.Sequence.GeneOntology

Contents

Basic data types
Reading the OBO format
Reading 'terms and ids'
Reading UniProt associations
Utility stuff

Description

GeneOntology - parse and index Gene Ontology Annotations In particular, the file 'gene_association.goa_uniprot' that contains links between GO terms and UniProt accessions.

- http://www.geneontology.org/ontology/gene_ontology.obo -- Contains the hierarchy including isA relationships.
- http://www.geneontology.org/GO.format.obo-1_2.shtml -- Describes the OBO format.
- ftp://ftp.ebi.ac.uk/pub/databases/GO/goa/UNIPROT/ -- Contains the GOA-UniProt mapping (and a README file).
- http://www.geneontology.org/ontology/GO.defs -- Contains GO definitions (not supported here yet).
- http://www.geneontology.org/doc/GO.terms_and_ids -- GO definitions, simpler and more schematically.

Synopsis

newtype GoTerm = GO Int
data GoDef = GoDef !GoTerm !ByteString !GoClass
type GoHierarchy = [(GoDef, [GoTerm])]
readObo :: FilePath -> IO GoHierarchy
readTerms :: FilePath -> IO [GoDef]
data Annotation = Ann !UniProtAcc !GoTerm !EvidenceCode
type UniProtAcc = ByteString

data GoClass

= Func
| Proc
| Comp

data EvidenceCode

= IC
| IDA
| IEA
| IEP
| IGC
| IGI
| IMP
| IPI
| ISS
| NAS
| ND
| RCA
| TAS
| NR

readGOA :: FilePath -> IO [Annotation]
isCurated :: EvidenceCode -> Bool
decomment :: ByteString -> [ByteString]

Basic data types

newtype GoTerm | Source

A GO term is a positive integer
Constructors

GO Int |

Instances

Eq GoTerm
Ord GoTerm
Read GoTerm
Show GoTerm

data GoDef | Source

A GoDef maps a GoTerm to a description and a GoClass.
Constructors

GoDef !GoTerm !ByteString !GoClass |

Instances

Show GoDef

Reading the OBO format

type GoHierarchy = [(GoDef, [GoTerm])] | Source

A list of Go definitions, with pointers to parent nodes. Read from the .obo file. The user may construct the explicit hierachy by storing these in a Map or similar

readObo :: FilePath -> IO GoHierarchy | Source

Read the GO hierarchy from the obo file. Note that this is not quite a tree structure.
Reading 'terms and ids'

readTerms :: FilePath -> IO [GoDef] | Source

Read GO term definitions, from the GO.terms_and_ids file
Reading UniProt associations

data Annotation | Source

A GOA annotation, containing a UniProt identifier, a GoTerm and an evidence code.
Constructors

Ann !UniProtAcc !GoTerm !EvidenceCode |

Instances

Show Annotation

type UniProtAcc = ByteString | Source

A UniProt identifier (short string of capitals and numbers).

data GoClass | Source

Constructors

Func |
Proc |
Comp |

Instances

Read GoClass
Show GoClass

data EvidenceCode | Source

Evidence codes describe the type of support for an annotation http://www.geneontology.org/GO.evidence.shtml
Constructors

IC | Inferred by Curator
IDA | Inferred from Direct Assay
IEA | Inferred from Electronic Annotation
IEP | Inferred from Expression Pattern
IGC | Inferred from Genomic Context
IGI | Inferred from Genetic Interaction
IMP | Inferred from Mutant Phenotype
IPI | Inferred from Physical Interaction
ISS | Inferred from Sequence or Structural Similarity
NAS | Non-traceable Author Statement
ND | No biological Data available
RCA | Inferred from Reviewed Computational Analysis
TAS | Traceable Author Statement
NR | Not Recorded

Instances

Eq EvidenceCode
Read EvidenceCode
Show EvidenceCode

readGOA :: FilePath -> IO [Annotation] | Source

Read the goa_uniprot file (warning: this one is huge!)

isCurated :: EvidenceCode -> Bool | Source

The vast majority of GOA data is IEA, while the most reliable information is manually curated. Filtering on this is useful to keep data set sizes manageable, too.
Utility stuff

decomment :: ByteString -> [ByteString] | Source

Produced by Haddock version 2.4.2