added code generated mmcif schema based on popular fields

This commit is contained in:
Alexander Rose
2018-02-23 20:26:28 -08:00
parent 6629c0b512
commit c36c3f0d13
3 changed files with 359 additions and 235 deletions

View File

@@ -0,0 +1,163 @@
entity.id
entity.type
entity.src_method
entity.pdbx_description
entity.formula_weight
entity.pdbx_number_of_molecules
entity.details
entity.pdbx_mutation
entity.pdbx_fragment
entity.pdbx_ec
exptl.entry_id
exptl.method
cell.entry_id
cell.length_a
cell.length_b
cell.length_c
cell.angle_alpha
cell.angle_beta
cell.angle_gamma
cell.Z_PDB
cell.pdbx_unique_axis
symmetry.entry_id
symmetry.space_group_name_H-M
symmetry.pdbx_full_space_group_name_H
symmetry.cell_setting
symmetry.Int_Tables_number
symmetry.space_group_name_Hall
struct_conf.conf_type_id
struct_conf.id
struct_conf.pdbx_PDB_helix_id
struct_conf.beg_label_comp_id
struct_conf.beg_label_asym_id
struct_conf.beg_label_seq_id
struct_conf.pdbx_beg_PDB_ins_code
struct_conf.end_label_comp_id
struct_conf.end_label_asym_id
struct_conf.end_label_seq_id
struct_conf.pdbx_end_PDB_ins_code
struct_conf.beg_auth_comp_id
struct_conf.beg_auth_asym_id
struct_conf.beg_auth_seq_id
struct_conf.end_auth_comp_id
struct_conf.end_auth_asym_id
struct_conf.end_auth_seq_id
struct_conf.pdbx_PDB_helix_class
struct_conf.details
struct_conf.pdbx_PDB_helix_length
struct_sheet_range.sheet_id
struct_sheet_range.id
struct_sheet_range.beg_label_comp_id
struct_sheet_range.beg_label_asym_id
struct_sheet_range.beg_label_seq_id
struct_sheet_range.pdbx_beg_PDB_ins_code
struct_sheet_range.end_label_comp_id
struct_sheet_range.end_label_asym_id
struct_sheet_range.end_label_seq_id
struct_sheet_range.pdbx_end_PDB_ins_code
struct_sheet_range.beg_auth_comp_id
struct_sheet_range.beg_auth_asym_id
struct_sheet_range.beg_auth_seq_id
struct_sheet_range.end_auth_comp_id
struct_sheet_range.end_auth_asym_id
struct_sheet_range.end_auth_seq_id
struct_conn.id
struct_conn.conn_type_id
struct_conn.pdbx_PDB_id
struct_conn.ptnr1_label_asym_id
struct_conn.ptnr1_label_comp_id
struct_conn.ptnr1_label_seq_id
struct_conn.ptnr1_label_atom_id
struct_conn.pdbx_ptnr1_label_alt_id
struct_conn.pdbx_ptnr1_PDB_ins_code
struct_conn.pdbx_ptnr1_standard_comp_id
struct_conn.ptnr1_symmetry
struct_conn.ptnr2_label_asym_id
struct_conn.ptnr2_label_seq_id
struct_conn.ptnr2_label_atom_id
struct_conn.pdbx_ptnr2_label_alt_id
struct_conn.pdbx_ptnr2_PDB_ins_code
struct_conn.ptnr1_auth_asym_id
struct_conn.ptnr1_auth_comp_id
struct_conn.ptnr1_auth_seq_id
struct_conn.ptnr2_auth_asym_id
struct_conn.ptnr2_auth_comp_id
struct_conn.ptnr2_auth_seq_id
struct_conn.ptnr2_symmetry
struct_conn.pdbx_ptnr3_label_atom_id
struct_conn.pdbx_ptnr3_label_seq_id
struct_conn.pdbx_ptnr3_label_comp_id
struct_conn.pdbx_ptnr3_label_asym_id
struct_conn.pdbx_ptnr3_label_alt_id
struct_conn.pdbx_ptnr3_PDB_ins_code
struct_conn.details
struct_conn.pdbx_dist_value
struct_conn.pdbx_value_order
struct_conn_type.id
struct_conn_type.criteria
struct_conn_type.reference
chem_comp_bond.comp_id
chem_comp_bond.pdbx_stereo_config
chem_comp_bond.pdbx_ordinal
chem_comp_bond.pdbx_aromatic_flag
chem_comp_bond.atom_id_1
chem_comp_bond.atom_id_2
chem_comp_bond.value_order
pdbx_struct_assembly.id
pdbx_struct_assembly.details
pdbx_struct_assembly.method_details
pdbx_struct_assembly.oligomeric_details
pdbx_struct_assembly.oligomeric_count
pdbx_struct_assembly_gen.assembly_id
pdbx_struct_assembly_gen.oper_expression
pdbx_struct_assembly_gen.asym_id_list
pdbx_struct_oper_list.id
pdbx_struct_oper_list.type
pdbx_struct_oper_list.name
pdbx_struct_oper_list.symmetry_operation
pdbx_struct_oper_list.matrix
pdbx_struct_oper_list.vector
pdbx_struct_mod_residue.id
pdbx_struct_mod_residue.label_asym_id
pdbx_struct_mod_residue.label_seq_id
pdbx_struct_mod_residue.label_comp_id
pdbx_struct_mod_residue.auth_asym_id
pdbx_struct_mod_residue.auth_seq_id
pdbx_struct_mod_residue.auth_comp_id
pdbx_struct_mod_residue.PDB_ins_code
pdbx_struct_mod_residue.parent_comp_id
pdbx_struct_mod_residue.details
atom_site.group_PDB
atom_site.id
atom_site.type_symbol
atom_site.label_atom_id
atom_site.label_alt_id
atom_site.label_comp_id
atom_site.label_asym_id
atom_site.label_entity_id
atom_site.label_seq_id
atom_site.pdbx_PDB_ins_code
atom_site.pdbx_formal_charge
atom_site.Cartn_x
atom_site.Cartn_y
atom_site.Cartn_z
atom_site.occupancy
atom_site.B_iso_or_equiv
atom_site.auth_atom_id
atom_site.auth_comp_id
atom_site.auth_asym_id
atom_site.auth_seq_id
atom_site.pdbx_PDB_model_num
1 entity.id
2 entity.type
3 entity.src_method
4 entity.pdbx_description
5 entity.formula_weight
6 entity.pdbx_number_of_molecules
7 entity.details
8 entity.pdbx_mutation
9 entity.pdbx_fragment
10 entity.pdbx_ec
11 exptl.entry_id
12 exptl.method
13 cell.entry_id
14 cell.length_a
15 cell.length_b
16 cell.length_c
17 cell.angle_alpha
18 cell.angle_beta
19 cell.angle_gamma
20 cell.Z_PDB
21 cell.pdbx_unique_axis
22 symmetry.entry_id
23 symmetry.space_group_name_H-M
24 symmetry.pdbx_full_space_group_name_H
25 symmetry.cell_setting
26 symmetry.Int_Tables_number
27 symmetry.space_group_name_Hall
28 struct_conf.conf_type_id
29 struct_conf.id
30 struct_conf.pdbx_PDB_helix_id
31 struct_conf.beg_label_comp_id
32 struct_conf.beg_label_asym_id
33 struct_conf.beg_label_seq_id
34 struct_conf.pdbx_beg_PDB_ins_code
35 struct_conf.end_label_comp_id
36 struct_conf.end_label_asym_id
37 struct_conf.end_label_seq_id
38 struct_conf.pdbx_end_PDB_ins_code
39 struct_conf.beg_auth_comp_id
40 struct_conf.beg_auth_asym_id
41 struct_conf.beg_auth_seq_id
42 struct_conf.end_auth_comp_id
43 struct_conf.end_auth_asym_id
44 struct_conf.end_auth_seq_id
45 struct_conf.pdbx_PDB_helix_class
46 struct_conf.details
47 struct_conf.pdbx_PDB_helix_length
48 struct_sheet_range.sheet_id
49 struct_sheet_range.id
50 struct_sheet_range.beg_label_comp_id
51 struct_sheet_range.beg_label_asym_id
52 struct_sheet_range.beg_label_seq_id
53 struct_sheet_range.pdbx_beg_PDB_ins_code
54 struct_sheet_range.end_label_comp_id
55 struct_sheet_range.end_label_asym_id
56 struct_sheet_range.end_label_seq_id
57 struct_sheet_range.pdbx_end_PDB_ins_code
58 struct_sheet_range.beg_auth_comp_id
59 struct_sheet_range.beg_auth_asym_id
60 struct_sheet_range.beg_auth_seq_id
61 struct_sheet_range.end_auth_comp_id
62 struct_sheet_range.end_auth_asym_id
63 struct_sheet_range.end_auth_seq_id
64 struct_conn.id
65 struct_conn.conn_type_id
66 struct_conn.pdbx_PDB_id
67 struct_conn.ptnr1_label_asym_id
68 struct_conn.ptnr1_label_comp_id
69 struct_conn.ptnr1_label_seq_id
70 struct_conn.ptnr1_label_atom_id
71 struct_conn.pdbx_ptnr1_label_alt_id
72 struct_conn.pdbx_ptnr1_PDB_ins_code
73 struct_conn.pdbx_ptnr1_standard_comp_id
74 struct_conn.ptnr1_symmetry
75 struct_conn.ptnr2_label_asym_id
76 struct_conn.ptnr2_label_seq_id
77 struct_conn.ptnr2_label_atom_id
78 struct_conn.pdbx_ptnr2_label_alt_id
79 struct_conn.pdbx_ptnr2_PDB_ins_code
80 struct_conn.ptnr1_auth_asym_id
81 struct_conn.ptnr1_auth_comp_id
82 struct_conn.ptnr1_auth_seq_id
83 struct_conn.ptnr2_auth_asym_id
84 struct_conn.ptnr2_auth_comp_id
85 struct_conn.ptnr2_auth_seq_id
86 struct_conn.ptnr2_symmetry
87 struct_conn.pdbx_ptnr3_label_atom_id
88 struct_conn.pdbx_ptnr3_label_seq_id
89 struct_conn.pdbx_ptnr3_label_comp_id
90 struct_conn.pdbx_ptnr3_label_asym_id
91 struct_conn.pdbx_ptnr3_label_alt_id
92 struct_conn.pdbx_ptnr3_PDB_ins_code
93 struct_conn.details
94 struct_conn.pdbx_dist_value
95 struct_conn.pdbx_value_order
96 struct_conn_type.id
97 struct_conn_type.criteria
98 struct_conn_type.reference
99 chem_comp_bond.comp_id
100 chem_comp_bond.pdbx_stereo_config
101 chem_comp_bond.pdbx_ordinal
102 chem_comp_bond.pdbx_aromatic_flag
103 chem_comp_bond.atom_id_1
104 chem_comp_bond.atom_id_2
105 chem_comp_bond.value_order
106 pdbx_struct_assembly.id
107 pdbx_struct_assembly.details
108 pdbx_struct_assembly.method_details
109 pdbx_struct_assembly.oligomeric_details
110 pdbx_struct_assembly.oligomeric_count
111 pdbx_struct_assembly_gen.assembly_id
112 pdbx_struct_assembly_gen.oper_expression
113 pdbx_struct_assembly_gen.asym_id_list
114 pdbx_struct_oper_list.id
115 pdbx_struct_oper_list.type
116 pdbx_struct_oper_list.name
117 pdbx_struct_oper_list.symmetry_operation
118 pdbx_struct_oper_list.matrix
119 pdbx_struct_oper_list.vector
120 pdbx_struct_mod_residue.id
121 pdbx_struct_mod_residue.label_asym_id
122 pdbx_struct_mod_residue.label_seq_id
123 pdbx_struct_mod_residue.label_comp_id
124 pdbx_struct_mod_residue.auth_asym_id
125 pdbx_struct_mod_residue.auth_seq_id
126 pdbx_struct_mod_residue.auth_comp_id
127 pdbx_struct_mod_residue.PDB_ins_code
128 pdbx_struct_mod_residue.parent_comp_id
129 pdbx_struct_mod_residue.details
130 atom_site.group_PDB
131 atom_site.id
132 atom_site.type_symbol
133 atom_site.label_atom_id
134 atom_site.label_alt_id
135 atom_site.label_comp_id
136 atom_site.label_asym_id
137 atom_site.label_entity_id
138 atom_site.label_seq_id
139 atom_site.pdbx_PDB_ins_code
140 atom_site.pdbx_formal_charge
141 atom_site.Cartn_x
142 atom_site.Cartn_y
143 atom_site.Cartn_z
144 atom_site.occupancy
145 atom_site.B_iso_or_equiv
146 atom_site.auth_atom_id
147 atom_site.auth_comp_id
148 atom_site.auth_asym_id
149 atom_site.auth_seq_id
150 atom_site.pdbx_PDB_model_num

View File

@@ -1,7 +1,9 @@
/**
* Copyright (c) 2017 mol* contributors, licensed under MIT, See LICENSE file for more info.
* Copyright (c) 2017-2018 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author David Sehnal <david.sehnal@gmail.com>
* Code-generated 'mmCIF' schema file
*
* @author mol-star package (src/apps/schema-generator/generate)
*/
import { Database, Column } from 'mol-data/db'
@@ -11,241 +13,200 @@ import Schema = Column.Schema
const str = Schema.str;
const int = Schema.int;
const float = Schema.float;
const coord = Schema.coord;
const entry = {
id: str
}
type EntityType = 'polymer' | 'non-polymer' | 'water' | 'macrolide'
const entity = {
id: str,
type: Schema.Aliased<EntityType>(str),
src_method: str,
pdbx_description: str,
formula_weight: float,
pdbx_number_of_molecules: int,
details: str,
pdbx_mutation: str,
pdbx_fragment: str,
pdbx_ec: str
}
const exptl = {
entry_id: str,
method: str
}
const cell = {
entry_id: str,
length_a: float,
length_b: float,
length_c: float,
angle_alpha: float,
angle_beta: float,
angle_gamma: float,
Z_PDB: int,
pdbx_unique_axis: str
}
const symmetry = {
entry_id: str,
'space_group_name_H-M': str,
'pdbx_full_space_group_name_H': str,
cell_setting: str,
Int_Tables_number: int,
space_group_name_Hall: str
}
const struct_conf = {
conf_type_id: str,
id: str,
pdbx_PDB_helix_id: int,
beg_label_comp_id: str,
beg_label_asym_id: str,
beg_label_seq_id: int,
pdbx_beg_PDB_ins_code: str,
end_label_comp_id: str,
end_label_asym_id: str,
end_label_seq_id: int,
pdbx_end_PDB_ins_code: str,
beg_auth_comp_id: str,
beg_auth_asym_id: str,
beg_auth_seq_id: int,
end_auth_comp_id: str,
end_auth_asym_id: str,
end_auth_seq_id: int,
pdbx_PDB_helix_class: int,
details: str,
pdbx_PDB_helix_length: int
}
const struct_sheet_range = {
sheet_id: str,
id: int,
beg_label_comp_id: str,
beg_label_asym_id: str,
beg_label_seq_id: int,
pdbx_beg_PDB_ins_code: str,
end_label_comp_id: str,
end_label_asym_id: str,
end_label_seq_id: int,
pdbx_end_PDB_ins_code: str,
beg_auth_comp_id: str,
beg_auth_asym_id: str,
beg_auth_seq_id: int,
end_auth_comp_id: str,
end_auth_asym_id: str,
end_auth_seq_id: int
}
type StructConnTypeId =
| 'covale'
| 'covale_base'
| 'covale_phosphate'
| 'covale_sugar'
| 'disulf'
| 'hydrog'
| 'metalc'
| 'mismat'
| 'modres'
| 'saltbr'
type BondValueOrder =
| 'SING'
| 'DOUB'
| 'TRIP'
| 'QUAD'
const struct_conn = {
id: str,
conn_type_id: Schema.Aliased<StructConnTypeId>(str),
pdbx_PDB_id: str,
ptnr1_label_asym_id: str,
ptnr1_label_comp_id: str,
ptnr1_label_seq_id: int,
ptnr1_label_atom_id: str,
pdbx_ptnr1_label_alt_id: str,
pdbx_ptnr1_PDB_ins_code: str,
pdbx_ptnr1_standard_comp_id: str,
ptnr1_symmetry: str,
ptnr2_label_asym_id: str,
ptnr2_label_comp_id: str,
ptnr2_label_seq_id: int,
ptnr2_label_atom_id: str,
pdbx_ptnr2_label_alt_id: str,
pdbx_ptnr2_PDB_ins_code: str,
ptnr1_auth_asym_id: str,
ptnr1_auth_comp_id: str,
ptnr1_auth_seq_id: int,
ptnr2_auth_asym_id: str,
ptnr2_auth_comp_id: str,
ptnr2_auth_seq_id: int,
ptnr2_symmetry: str,
pdbx_ptnr3_label_atom_id: str,
pdbx_ptnr3_label_seq_id: int,
pdbx_ptnr3_label_comp_id: str,
pdbx_ptnr3_label_asym_id: str,
pdbx_ptnr3_label_alt_id: str,
pdbx_ptnr3_PDB_ins_code: str,
details: str,
pdbx_dist_value: float,
pdbx_value_order: Schema.Aliased<BondValueOrder>(str)
}
const struct_conn_type = {
id: Schema.Aliased<StructConnTypeId>(str),
criteria: str,
reference: str
}
const chem_comp_bond = {
comp_id: str,
pdbx_stereo_config: str,
pdbx_ordinal: int,
pdbx_aromatic_flag: Schema.Aliased<'Y' | 'N'>(str),
atom_id_1: str,
atom_id_2: str,
value_order: Schema.Aliased<BondValueOrder>(str)
}
const pdbx_struct_assembly = {
id: str,
details: str,
method_details: str,
oligomeric_details: str,
oligomeric_count: int
}
const pdbx_struct_assembly_gen = {
assembly_id: str,
oper_expression: str,
asym_id_list: str
}
const pdbx_struct_oper_list = {
id: str,
type: str,
name: str,
symmetry_operation: str,
matrix: Schema.Matrix(3, 3),
vector: Schema.Vector(3)
}
const pdbx_struct_mod_residue = {
id: int,
label_asym_id: str,
label_seq_id: int,
label_comp_id: str,
auth_asym_id: str,
auth_seq_id: int,
auth_comp_id: str,
PDB_ins_code: str,
parent_comp_id: str,
details: str
}
const atom_site = {
group_PDB: str,
id: int,
type_symbol: str,
label_atom_id: str,
label_alt_id: str,
label_comp_id: str,
label_asym_id: str,
label_entity_id: str,
label_seq_id: int,
pdbx_PDB_ins_code: str,
pdbx_formal_charge: str,
Cartn_x: Schema.coord,
Cartn_y: Schema.coord,
Cartn_z: Schema.coord,
occupancy: float,
B_iso_or_equiv: float,
auth_atom_id: str,
auth_comp_id: str,
auth_asym_id: str,
auth_seq_id: int,
pdbx_PDB_model_num: int
}
const Aliased = Schema.Aliased;
const Matrix = Schema.Matrix;
const Vector = Schema.Vector;
export const mmCIF_Schema = {
entry,
entity,
exptl,
cell,
symmetry,
struct_conf,
struct_sheet_range,
struct_conn,
struct_conn_type,
chem_comp_bond,
pdbx_struct_assembly,
pdbx_struct_assembly_gen,
pdbx_struct_oper_list,
pdbx_struct_mod_residue,
atom_site
};
atom_site: {
auth_asym_id: str,
auth_atom_id: str,
auth_comp_id: str,
// auth_seq_id: str,
auth_seq_id: int,
B_iso_or_equiv: float,
Cartn_x: coord,
Cartn_y: coord,
Cartn_z: coord,
group_PDB: str,
// id: str,
id: int,
label_alt_id: str,
label_asym_id: str,
label_atom_id: str,
label_comp_id: str,
label_entity_id: str,
label_seq_id: int,
occupancy: float,
type_symbol: str,
pdbx_PDB_ins_code: str,
pdbx_PDB_model_num: int,
pdbx_formal_charge: int,
},
cell: {
angle_alpha: float,
angle_beta: float,
angle_gamma: float,
entry_id: str,
length_a: float,
length_b: float,
length_c: float,
Z_PDB: int,
pdbx_unique_axis: str,
},
chem_comp_bond: {
atom_id_1: str,
atom_id_2: str,
comp_id: str,
value_order: Aliased<'sing' | 'doub' | 'trip' | 'quad' | 'arom' | 'poly' | 'delo' | 'pi'>(str),
pdbx_ordinal: int,
pdbx_stereo_config: Aliased<'E' | 'Z' | 'N'>(str),
pdbx_aromatic_flag: Aliased<'Y' | 'N'>(str),
},
entity: {
details: str,
formula_weight: float,
id: str,
src_method: Aliased<'nat' | 'man' | 'syn'>(str),
type: Aliased<'polymer' | 'non-polymer' | 'macrolide' | 'water'>(str),
pdbx_description: str,
pdbx_number_of_molecules: float,
pdbx_mutation: str,
pdbx_fragment: str,
pdbx_ec: str,
},
exptl: {
entry_id: str,
method: str,
},
struct_conf: {
beg_label_asym_id: str,
beg_label_comp_id: str,
beg_label_seq_id: int,
beg_auth_asym_id: str,
beg_auth_comp_id: str,
// beg_auth_seq_id: str,
beg_auth_seq_id: int,
conf_type_id: Aliased<'HELX_P' | 'HELX_OT_P' | 'HELX_RH_P' | 'HELX_RH_OT_P' | 'HELX_RH_AL_P' | 'HELX_RH_GA_P' | 'HELX_RH_OM_P' | 'HELX_RH_PI_P' | 'HELX_RH_27_P' | 'HELX_RH_3T_P' | 'HELX_RH_PP_P' | 'HELX_LH_P' | 'HELX_LH_OT_P' | 'HELX_LH_AL_P' | 'HELX_LH_GA_P' | 'HELX_LH_OM_P' | 'HELX_LH_PI_P' | 'HELX_LH_27_P' | 'HELX_LH_3T_P' | 'HELX_LH_PP_P' | 'HELX_N' | 'HELX_OT_N' | 'HELX_RH_N' | 'HELX_RH_OT_N' | 'HELX_RH_A_N' | 'HELX_RH_B_N' | 'HELX_RH_Z_N' | 'HELX_LH_N' | 'HELX_LH_OT_N' | 'HELX_LH_A_N' | 'HELX_LH_B_N' | 'HELX_LH_Z_N' | 'TURN_P' | 'TURN_OT_P' | 'TURN_TY1_P' | 'TURN_TY1P_P' | 'TURN_TY2_P' | 'TURN_TY2P_P' | 'TURN_TY3_P' | 'TURN_TY3P_P' | 'STRN'>(str),
details: str,
end_label_asym_id: str,
end_label_comp_id: str,
end_label_seq_id: int,
end_auth_asym_id: str,
end_auth_comp_id: str,
// end_auth_seq_id: str,
end_auth_seq_id: int,
id: str,
pdbx_beg_PDB_ins_code: str,
pdbx_end_PDB_ins_code: str,
pdbx_PDB_helix_class: str,
pdbx_PDB_helix_length: int,
pdbx_PDB_helix_id: str,
},
struct_conn: {
conn_type_id: Aliased<'covale' | 'disulf' | 'hydrog' | 'metalc' | 'mismat' | 'saltbr' | 'modres' | 'covale_base' | 'covale_sugar' | 'covale_phosphate'>(str),
details: str,
id: str,
ptnr1_label_asym_id: str,
ptnr1_label_atom_id: str,
ptnr1_label_comp_id: str,
ptnr1_label_seq_id: int,
ptnr1_auth_asym_id: str,
ptnr1_auth_comp_id: str,
// ptnr1_auth_seq_id: str,
ptnr1_auth_seq_id: int,
ptnr1_symmetry: str,
ptnr2_label_asym_id: str,
ptnr2_label_atom_id: str,
ptnr2_label_seq_id: int,
ptnr2_auth_asym_id: str,
ptnr2_auth_comp_id: str,
// ptnr2_auth_seq_id: str,
ptnr2_auth_seq_id: int,
ptnr2_symmetry: str,
pdbx_ptnr1_PDB_ins_code: str,
pdbx_ptnr1_label_alt_id: str,
pdbx_ptnr1_standard_comp_id: str,
pdbx_ptnr2_PDB_ins_code: str,
pdbx_ptnr2_label_alt_id: str,
pdbx_ptnr3_PDB_ins_code: str,
pdbx_ptnr3_label_alt_id: str,
pdbx_ptnr3_label_asym_id: str,
pdbx_ptnr3_label_atom_id: str,
pdbx_ptnr3_label_comp_id: str,
pdbx_ptnr3_label_seq_id: int,
pdbx_PDB_id: str,
pdbx_dist_value: float,
pdbx_value_order: Aliased<'sing' | 'doub' | 'trip' | 'quad'>(str),
},
struct_conn_type: {
criteria: str,
id: Aliased<'covale' | 'disulf' | 'hydrog' | 'metalc' | 'mismat' | 'saltbr' | 'modres' | 'covale_base' | 'covale_sugar' | 'covale_phosphate'>(str),
reference: str,
},
struct_sheet_range: {
beg_label_asym_id: str,
beg_label_comp_id: str,
beg_label_seq_id: int,
end_label_asym_id: str,
end_label_comp_id: str,
end_label_seq_id: int,
beg_auth_asym_id: str,
beg_auth_comp_id: str,
// beg_auth_seq_id: str,
beg_auth_seq_id: int,
end_auth_asym_id: str,
end_auth_comp_id: str,
// end_auth_seq_id: str,
end_auth_seq_id: int,
id: str,
sheet_id: str,
pdbx_beg_PDB_ins_code: str,
pdbx_end_PDB_ins_code: str,
},
symmetry: {
entry_id: str,
cell_setting: Aliased<'triclinic' | 'monoclinic' | 'orthorhombic' | 'tetragonal' | 'rhombohedral' | 'trigonal' | 'hexagonal' | 'cubic'>(str),
Int_Tables_number: int,
space_group_name_Hall: str,
'space_group_name_H-M': str,
},
pdbx_struct_assembly: {
method_details: str,
oligomeric_details: str,
oligomeric_count: int,
details: str,
id: str,
},
pdbx_struct_mod_residue: {
id: int,
auth_asym_id: str,
auth_comp_id: str,
// auth_seq_id: str,
auth_seq_id: int,
PDB_ins_code: str,
label_asym_id: str,
label_comp_id: str,
label_seq_id: int,
parent_comp_id: str,
details: str,
},
pdbx_struct_oper_list: {
id: str,
type: str,
name: str,
symmetry_operation: str,
matrix: Matrix(3, 3),
vector: Vector(3),
},
pdbx_struct_assembly_gen: {
asym_id_list: str,
assembly_id: str,
oper_expression: str,
},
}
export type mmCIF_Schema = typeof mmCIF_Schema;
export interface mmCIF_Database extends Database<mmCIF_Schema> { }

View File

@@ -111,7 +111,7 @@ const atom_site: Encoder.CategoryDefinition<Atom.Location> = {
float('Cartn_y', P.atom.y),
float('Cartn_z', P.atom.z),
float('occupancy', P.atom.occupancy),
str('pdbx_formal_charge', P.atom.pdbx_formal_charge),
int('pdbx_formal_charge', P.atom.pdbx_formal_charge),
str('auth_atom_id', P.atom.auth_atom_id),
str('auth_comp_id', P.residue.auth_comp_id),