Changes between Initial Version and Version 1 of mmCIFWriting


Ignore:
Timestamp:
Feb 5, 2018, 11:12:02 AM (8 years ago)
Author:
Greg Couch
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • mmCIFWriting

    v1 v1  
     1= Writing mmCIF Files =
     2
     3The ultimate goal is to write out mmCIF files with all of the information ChimeraX uses.  That is not possible for several reasons:
     4
     5* Information needed to reconstruct some tables is discarded after being used (//e.g.//, the sheet information for strands)
     6* Whether or not the structure has been edited incompatibly is unknown, so associated metadata may or may not still be valid
     7* intra-residue metal coordination bonds
     8
     9== First Pass ==
     10
     11The [[http://www.rbvi.ucsf.edu/chimerax/docs/devel/mmcif.html|ChimeraX Fast mmCIF Guidelines]] give ChimeraX's requirements for reading.
     12
     13The minimal set of tables needed to properly reconstruct the connectivity are the **entity_poly_seq**, **atom_site**, and **struct_conn** tables.  Minimal work for the **struct_conn** table, for example, hydrogen bonds would be skipped.
     14
     15After that, for completeness, we should add the **entity** and **chem_comp** tables.  And the **audit_conform** table with our annotation that all keywords are in lowercase.
     16
     17Next, we should add support for writing the **atom_site** table with fixed width columns and add that annotation to the **audit_conform** table.
     18
     19== Completing Connectivity ==
     20
     21All of the issues for the **struct_conn** table should be addressed:
     22
     23* intra-residue metal coordination bonds
     24* hydrogen bonds
     25* bonds missing from residue templates
     26
     27At this point, we could embed the residue templates (**chem_atom** and **chem_bond** tables) like the [[http://www.pdbe.org|PDBe]] does in its "updated" mmCIF files.
     28
     29== Secondary Structure ==
     30
     31The secondary structure annotations, specifically the sheet annotations, are difficult since ChimeraX does not keep the original sheet information nor does it compute it.  Functionally, the currently needed secondary structure information can be computed with the internal DSSP code.  But those annotations don't always match the author's.  Ideally, the sheet information would both preserved and be computed, so the mmCIF file could contain that information.  (The sheet information would eventually be useful for a fancy cartoon representation.)
     32