better cif-core data naming

This commit is contained in:
Alexander Rose
2020-04-10 19:47:54 -07:00
parent e846e1fdd7
commit c6efa475a5
3 changed files with 40 additions and 2 deletions

View File

@@ -1,8 +1,12 @@
audit.block_doi
database_code.depnum_ccdc_archive
database_code.depnum_ccdc_fiz
database_code.ICSD
database_code.MDF
database_code.NBS
database_code.CSD
database_code.COD
chemical.name_systematic
chemical.name_common
1 audit.block_doi
2 database_code.depnum_ccdc_archive
3 database_code.NBS database_code.depnum_ccdc_fiz
4 database_code.ICSD
5 database_code.MDF
6 database_code.NBS
7 database_code.CSD
8 chemical.name_systematic database_code.COD
9 chemical.name_systematic
10 chemical.name_common
11 chemical.melting_point
12 chemical_formula.moiety

View File

@@ -365,6 +365,10 @@ export const CifCore_Schema = {
* originate from that source.
*/
database_code: {
/**
* Code assigned by Crystallography Open Database (COD).
*/
COD: str,
/**
* Code assigned by the Cambridge Structural Database.
*/
@@ -375,6 +379,20 @@ export const CifCore_Schema = {
* archived by the CCDC.
*/
depnum_ccdc_archive: str,
/**
* Deposition numbers assigned by the Fachinformationszentrum
* Karlsruhe (FIZ) to files containing structural information
* archived by the Cambridge Crystallographic Data Centre (CCDC).
*/
depnum_ccdc_fiz: str,
/**
* Code assigned by the Inorganic Crystal Structure Database.
*/
ICSD: str,
/**
* Code assigned in the Metals Data File.
*/
MDF: str,
/**
* Code assigned by the NBS (NIST) Crystal Data Database.
*/

View File

@@ -87,7 +87,11 @@ async function getModels(db: CifCore_Database, format: CifCoreFormat, ctx: Runti
pdbx_PDB_model_num: Column.ofConst(1, atomCount, Column.Schema.int),
}, atomCount);
const name = db.chemical.name_common.value(0) || db.chemical.name_systematic.value(0)
const name = (
db.chemical.name_common.value(0) ||
db.chemical.name_systematic.value(0) ||
db.chemical_formula.sum.value(0)
)
const entityBuilder = new EntityBuilder()
entityBuilder.setNames([['MOL', name || 'Unknown Entity']])
@@ -175,7 +179,19 @@ namespace CifCoreFormat {
export function fromFrame(frame: CifFrame, db?: CifCore_Database): CifCoreFormat {
if (!db) db = CIF.schema.cifCore(frame)
return { kind: 'cifCore', name: db._name, data: { db, frame } };
const name = (
db.database_code.depnum_ccdc_archive.value(0) ||
db.database_code.depnum_ccdc_fiz.value(0) ||
db.database_code.ICSD.value(0) ||
db.database_code.MDF.value(0) ||
db.database_code.NBS.value(0) ||
db.database_code.CSD.value(0) ||
db.database_code.COD.value(0) ||
db._name
)
return { kind: 'cifCore', name, data: { db, frame } };
}
}