Dear Greg, I have been working on producing a new version of the mapping file for two weeks now. It is not so much updating the taxonomy, but rather updating all the classifications. Should be done very soon.
To build your own mapping file should be easy.
To understand the file, open it in sqlite3. Take a look at the schema:
sqlite> .schema
CREATE TABLE info(id TEXT PRIMARY KEY, info_string TEXT, size NUMERIC );
CREATE TABLE mappings (Accession PRIMARY KEY , Taxonomy INT, SEED INT, EGGNOG INT, INTERPRO2GO INT) WITHOUT ROWID;
The database contains two tables. The info table just contains some general stuff:
sqlite> select * from info;
general|Created 2019-10-15 07:02:08|222275394
Taxonomy|Source: prot_acc2tax-Oct2019.map.gz|222275394
SEED|Source: acc2seed-May2015XX.map.gz|4018092
EGGNOG|Source: acc2eggnog-Oct2019.map.gz|6270842
INTERPRO2GO|Source: acc2interpro-Oct2019.map.gz|27762347
The first entry in each row is the name of the classification, the second is an info string and the last is the number of entries for that classification. A row with key general lists the generation date and number of rows in the mappings table.
The mappings tables contains NCBI accessions as keys and then integer identifiers for the different classifications:
sqlite> select * from mappings limit 1000000, 10;
ABE34864|266265|1175|2375|39458
ABE34872|266265||24869|20449
ABE34876|266265|||
ABE34880|266265|1492|3284|
ABE34881|266265|5690|155401|
ABE34885|266265|||
ABE34886|266265|||17039
ABE34904|266265||1846|
ABE34905|266265|1735|405|
ABE34909|266265|||39420
So, you can create your own mapping file by setting up the two tables and filing them with values, using sqlite3 commands.
I use a Java program to create the files and will look into making it available.