ihmwg / python-ihm

Python package for handling IHM mmCIF and BinaryCIF files
MIT License
14 stars 7 forks source link

make-mmcif.py overwrites struct table with "Auto-generated system" #90

Closed benmwebb closed 1 year ago

benmwebb commented 1 year ago

@brindakv reports that util/make-mmcif.py ignores any user-provided information for the _struct table and overwrites it with "Auto-generated system".

benmwebb commented 1 year ago

Looks fine in my testing:

% cat input.cif 
data_PDBDEV_00000025
_entry.id PDBDEV_00000025
_struct.entry_id PDBDEV_00000025
_struct.title 'Architecture of Pol II(G) and molecular mechanism of transcription regulation by Gdown1'
% python3 make-mmcif.py input.cif
% grep ^_struct output.cif                               
_struct.entry_id PDBDEV_00000025
_struct.pdbx_model_details .
_struct.pdbx_structure_determination_methodology integrative
_struct.title 'Architecture of Pol II(G) and molecular mechanism of transcription regulation by Gdown1'

and

% cat input2.cif 
data_PDBDEV_00000025
_entry.id PDBDEV_00000025
_struct.entry_id PDBDEV_00000025
% python3 make-mmcif.py input2.cif
% grep ^_struct output.cif
_struct.entry_id PDBDEV_00000025
_struct.pdbx_model_details .
_struct.pdbx_structure_determination_methodology integrative
_struct.title 'Auto-generated system'

i.e. make-mmcif.py adds missing fields, and only overwrites _struct.title if it is missing in the input.

@brindakv perhaps you are using other _struct fields to provide title-like information, that python-ihm doesn't know about, such as _struct.pdbx_details ? These won't be preserved in the output.

brindakv commented 1 year ago

@benmwebb you are right. When I run it locally, the title is preserved. But it is not preserved in the deposition system. I'll check the version of make-mmcif.py that the system uses.

benmwebb commented 1 year ago

@brindakv I assume you fixed this in the deposition system?