MITOMAP
Overview
MITOMAP provides a compendium of polymorphisms and mutations in human mitochondrial DNA.
Publication
Lott, M.T., Leipzig, J.N., Derbeneva, O., Xie, H.M., Chalkia, D., Sarmady, M., Procaccio, V., and Wallace, D.C. mtDNA variation and analysis using MITOMAP and MITOMASTER. Current Protocols in Bioinformatics 1(123):1.23.1-26 (2013). http://www.mitomap.org
Scraping HTML Pages
Example
MITOMAP is unique in that it doesn't offer the data in a downloadable format. As a result, the annotation content in Illumina Connected Annotations is scraped from the following MITOMAP pages:

Parsing
Here's what the HTML code looks like:
We're mainly interested in the following columns (numbers indicate the HTML page above):
Position1,2,3,4
Disease3,4
Nucleotide Change1,2
Allele3,4
Homoplasmy3,4
Heteroplasmy3,4
Status3,4
MitoTIP3,4
GB Seqs FL(CR)1,2,3,4
Deletion Junction5
Insert (nt)6
Insert Point (nt)6
References/Curated References1,2,3,4
MitoTIP
The MitoTIP information is used to populate the clinicalSignificance and scorePercentile JSON keys. The "frequency alert" entries are skipped since it's not directly relevant to clinical significance.
Left alignment
Many of the variants in MITOMAP have not been normalized. As part of our import procedure, we left align all insertions and deletions.
Variant Enumeration
Sometimes MITOMAP provides data that indicates that multiple values have been observed. Some examples of this are C-C(2-8) and A-AC or ACC. Alternate alleles containing IUPAC ambiguity codes are similarly enumerated.
Inversions
MITOMAP inversions are currently treated as MNVs.
Allele Parsing
The following MITOMAP allele parsing conventions are supported:
C123T
16021_16022del
8042del2
C9537insC
3902_3908invACCTTGC
A-AC or ACC
C-C(2-8)
8042delAT
PostgreSQL Dump File
Example
Parsing
From the PostgreSQL dump file, we're interested in parsing the mapping between reference IDs and the PubMed IDs:
id
nlmid
Why not use the PostgreSQL file for everything?
Ideally we would use this file for parsing all of our data, but the schema contains 80+ tables and we haven't invested the time yet to see how the tables are linked together to produce the 6 main HTML pages that we're interested in.
Known Issues
Duplicated records
Multiple records describing the same nucleotide change are merged into the same record. If any conflicting information is found (homoplasmy, heteroplasmy, status, clinical significance, score percentile, end coordinate, variant type), an exception is thrown.
For diseases and PubMed IDs, we take the union of the values in the duplicated records.
For full length GenBank sequences, we take the largest number from each of the duplicated records since it provides the strongest evidence for this variant.
Skipped records
Records that represent an alternate notation of the original variant are skipped. Similarly some variants with confusing alleles (T961delT+ / -C(n)ins) are also skipped.
Download URLs
see HTML Pages above
JSON Output
Small Variants
refAllele
string
altAllele
string
diseases
string array
associated diseases
hasHomoplasmy
boolean
hasHeteroplasmy
boolean
status
string
record status
clinicalSignificance
string
predicted pathogenicity
scorePercentile
float
MitoTIP score
numGenBankFullLengthSeqs
integer
# of GenBank full-length sequences
pubMedIds
string array
isAlleleSpecific
boolean
true when the current variant alternate allele matches the MITOMAP alternate allele
Structural Variants
chromosome
string
begin
integer
end
integer
variantType
string array
reciprocalOverlap
float
Range: 0 - 1. Specified up to 5 decimal places
annotationOverlap
float
Range: 0 - 1. Specified up to 5 decimal places
Last updated
Was this helpful?

