Opened 3 years ago
Closed 3 years ago
#8484 closed defect (fixed)
"styling lost" in hand-edited mmCIF
| Reported by: | Owned by: | Greg Couch | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Input/Output | Version: | |
| Keywords: | Cc: | Tom Goddard | |
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description
The following bug report has been submitted:
Platform: macOS-10.15.7-x86_64-i386-64bit
ChimeraX Version: 1.5 (2022-11-24 00:03:27 UTC)
Description
(Describe the actions that caused this problem to occur here)
Hi Chimera team!
I am doing some mmCIF file remediation work that involves changing coordinate xyz values.
It seems that sometimes Chimera-X doesn't like the new lines I am printing out (vi python script) for the _atom_site section. For "safety" I have been adding extra spaces between the x,y,z values. As a test, if I mix in a few of these lines into a cif file that Chimera-X is otherwise able to read, I am seeing the error message: mmCIF parsing error: PDBx/mmCIF styling lost near line 2100. e.g.:
loop_
_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.Cartn_x
_atom_site.Cartn_y
_atom_site.Cartn_z
_atom_site.occupancy
_atom_site.B_iso_or_equiv
_atom_site.pdbx_formal_charge
_atom_site.auth_seq_id
_atom_site.auth_comp_id
_atom_site.auth_asym_id
_atom_site.auth_atom_id
_atom_site.pdbx_auth_seq_id
_atom_site.pdbx_auth_comp_id
_atom_site.pdbx_auth_asym_id
_atom_site.pdbx_auth_atom_name
_atom_site.pdbx_PDB_model_num
ATOM 1 N N . ALA A 1 1 ? -114.782 -65.938 -17.341 1.00 68.73 ? 1 ALA A N 1 ALA A N 1
ATOM 2 C CA . ALA A 1 1 ? -114.818 -64.550 -16.778 1.00 67.64 ? 1 ALA A CA 1 ALA A CA 1
ATOM 3 C C . ALA A 1 1 ? -113.499 -63.782 -17.023 1.00 66.89 ? 1 ALA A C 1 ALA A C 1
ATOM 4 O O . ALA A 1 1 ? -112.437 -64.369 -17.326 1.00 68.43 ? 1 ALA A O 1 ALA A O 1
ATOM 5 C CB . ALA A 1 1 ? -115.138 -64.589 -15.253 1.00 66.33 ? 1 ALA A CB 1 ALA A CB 1
ATOM 6 N N . SER A 1 2 ? -113.605 -62.464 -16.875 1.00 61.92 ? 2 SER A N 2 SER A N 1
The lines for ATOMS 1-3 are valid cif loop lines but ChimeraX is hiccuping.
Log:
UCSF ChimeraX version: 1.5 (2022-11-24)
© 2016-2022 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> open fullrev-test2.cif
mmCIF parsing error: PDBx/mmCIF styling lost near line 2100
OpenGL version: 4.1 INTEL-14.7.28
OpenGL renderer: Intel(R) Iris(TM) Plus Graphics OpenGL Engine
OpenGL vendor: Intel Inc.
Python: 3.9.11
Locale: en_US.UTF-8
Qt version: PyQt6 6.3.1, Qt 6.3.1
Qt runtime version: 6.3.2
Qt platform: cocoa
Hardware:
Hardware Overview:
Model Name: MacBook Pro
Model Identifier: MacBookPro16,2
Processor Name: Quad-Core Intel Core i7
Processor Speed: 2.3 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 512 KB
L3 Cache: 8 MB
Hyper-Threading Technology: Enabled
Memory: 32 GB
Boot ROM Version: 1731.140.2.0.0 (iBridge: 19.16.16064.0.0,0)
Software:
System Software Overview:
System Version: macOS 10.15.7 (19H2026)
Kernel Version: Darwin 19.6.0
Time since boot: 48 days 16:06
Graphics/Displays:
Intel Iris Plus Graphics:
Chipset Model: Intel Iris Plus Graphics
Type: GPU
Bus: Built-In
VRAM (Dynamic, Max): 1536 MB
Vendor: Intel
Device ID: 0x8a53
Revision ID: 0x0007
Metal: Supported, feature set macOS GPUFamily2 v1
Displays:
Color LCD:
Display Type: Built-In Retina LCD
Resolution: 2560 x 1600 Retina
Framebuffer Depth: 30-Bit Color (ARGB2101010)
Main Display: Yes
Mirror: Off
Online: Yes
Automatically Adjust Brightness: No
Connection Type: Internal
HP E273q:
Resolution: 2560 x 1440 (QHD/WQHD - Wide Quad High Definition)
UI Looks like: 2560 x 1440 @ 60 Hz
Framebuffer Depth: 30-Bit Color (ARGB2101010)
Display Serial Number: 6CM0151363
Mirror: Off
Online: Yes
Rotation: Supported
Adapter Type: DVI or HDMI
Automatically Adjust Brightness: No
Adapter Firmware Version: ff.c1
Installed Packages:
alabaster: 0.7.12
appdirs: 1.4.4
appnope: 0.1.3
asttokens: 2.1.0
Babel: 2.11.0
backcall: 0.2.0
blockdiag: 3.0.0
build: 0.8.0
certifi: 2021.10.8
cftime: 1.6.2
charset-normalizer: 2.1.1
ChimeraX-AddCharge: 1.4
ChimeraX-AddH: 2.2.1
ChimeraX-AlignmentAlgorithms: 2.0
ChimeraX-AlignmentHdrs: 3.2.1
ChimeraX-AlignmentMatrices: 2.0
ChimeraX-Alignments: 2.6
ChimeraX-AlphaFold: 1.0
ChimeraX-AltlocExplorer: 1.0.3
ChimeraX-AmberInfo: 1.0
ChimeraX-Arrays: 1.0
ChimeraX-Atomic: 1.41.5
ChimeraX-AtomicLibrary: 8.0.3
ChimeraX-AtomSearch: 2.0.1
ChimeraX-AxesPlanes: 2.3
ChimeraX-BasicActions: 1.1.2
ChimeraX-BILD: 1.0
ChimeraX-BlastProtein: 2.1.2
ChimeraX-BondRot: 2.0.1
ChimeraX-BugReporter: 1.0.1
ChimeraX-BuildStructure: 2.7.1
ChimeraX-Bumps: 1.0
ChimeraX-BundleBuilder: 1.2
ChimeraX-ButtonPanel: 1.0.1
ChimeraX-CageBuilder: 1.0.1
ChimeraX-CellPack: 1.0
ChimeraX-Centroids: 1.3.1
ChimeraX-ChangeChains: 1.0.2
ChimeraX-CheckWaters: 1.3
ChimeraX-ChemGroup: 2.0
ChimeraX-Clashes: 2.2.4
ChimeraX-ColorActions: 1.0.3
ChimeraX-ColorGlobe: 1.0
ChimeraX-ColorKey: 1.5.2
ChimeraX-CommandLine: 1.2.4
ChimeraX-ConnectStructure: 2.0.1
ChimeraX-Contacts: 1.0.1
ChimeraX-Core: 1.5
ChimeraX-CoreFormats: 1.1
ChimeraX-coulombic: 1.3.2
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-CrystalContacts: 1.0.1
ChimeraX-DataFormats: 1.2.2
ChimeraX-Dicom: 1.1
ChimeraX-DistMonitor: 1.3
ChimeraX-DockPrep: 1.0
ChimeraX-Dssp: 2.0
ChimeraX-EMDB-SFF: 1.0
ChimeraX-ExperimentalCommands: 1.0
ChimeraX-FileHistory: 1.0.1
ChimeraX-FunctionKey: 1.0.1
ChimeraX-Geometry: 1.2
ChimeraX-gltf: 1.0
ChimeraX-Graphics: 1.1
ChimeraX-Hbonds: 2.4
ChimeraX-Help: 1.2.1
ChimeraX-HKCage: 1.3
ChimeraX-IHM: 1.1
ChimeraX-ImageFormats: 1.2
ChimeraX-IMOD: 1.0
ChimeraX-IO: 1.0.1
ChimeraX-ItemsInspection: 1.0.1
ChimeraX-Label: 1.1.7
ChimeraX-ListInfo: 1.1.1
ChimeraX-Log: 1.1.5
ChimeraX-LookingGlass: 1.1
ChimeraX-Maestro: 1.8.2
ChimeraX-Map: 1.1.2
ChimeraX-MapData: 2.0
ChimeraX-MapEraser: 1.0.1
ChimeraX-MapFilter: 2.0
ChimeraX-MapFit: 2.0
ChimeraX-MapSeries: 2.1.1
ChimeraX-Markers: 1.0.1
ChimeraX-Mask: 1.0.1
ChimeraX-MatchMaker: 2.0.9
ChimeraX-MDcrds: 2.6
ChimeraX-MedicalToolbar: 1.0.2
ChimeraX-Meeting: 1.0.1
ChimeraX-MLP: 1.1
ChimeraX-mmCIF: 2.8
ChimeraX-MMTF: 2.2
ChimeraX-Modeller: 1.5.6
ChimeraX-ModelPanel: 1.3.6
ChimeraX-ModelSeries: 1.0.1
ChimeraX-Mol2: 2.0
ChimeraX-Mole: 1.0
ChimeraX-Morph: 1.0.1
ChimeraX-MouseModes: 1.1.1
ChimeraX-Movie: 1.0
ChimeraX-Neuron: 1.0
ChimeraX-Nucleotides: 2.0.3
ChimeraX-OpenCommand: 1.9.1
ChimeraX-PDB: 2.6.8
ChimeraX-PDBBio: 1.0
ChimeraX-PDBLibrary: 1.0.2
ChimeraX-PDBMatrices: 1.0
ChimeraX-PickBlobs: 1.0.1
ChimeraX-Positions: 1.0
ChimeraX-PresetMgr: 1.1
ChimeraX-PubChem: 2.1
ChimeraX-ReadPbonds: 1.0.1
ChimeraX-Registration: 1.1.1
ChimeraX-RemoteControl: 1.0
ChimeraX-RenumberResidues: 1.1
ChimeraX-ResidueFit: 1.0.1
ChimeraX-RestServer: 1.1
ChimeraX-RNALayout: 1.0
ChimeraX-RotamerLibMgr: 2.0.1
ChimeraX-RotamerLibsDunbrack: 2.0
ChimeraX-RotamerLibsDynameomics: 2.0
ChimeraX-RotamerLibsRichardson: 2.0
ChimeraX-SaveCommand: 1.5.1
ChimeraX-SchemeMgr: 1.0
ChimeraX-SDF: 2.0
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.7.2
ChimeraX-Shape: 1.0.1
ChimeraX-Shell: 1.0.1
ChimeraX-Shortcuts: 1.1.1
ChimeraX-ShowSequences: 1.0.1
ChimeraX-SideView: 1.0.1
ChimeraX-Smiles: 2.1
ChimeraX-SmoothLines: 1.0
ChimeraX-SpaceNavigator: 1.0
ChimeraX-StdCommands: 1.10
ChimeraX-STL: 1.0
ChimeraX-Storm: 1.0
ChimeraX-StructMeasure: 1.1
ChimeraX-Struts: 1.0.1
ChimeraX-Surface: 1.0
ChimeraX-SwapAA: 2.0.1
ChimeraX-SwapRes: 2.1.3
ChimeraX-TapeMeasure: 1.0
ChimeraX-Test: 1.0
ChimeraX-Toolbar: 1.1.2
ChimeraX-ToolshedUtils: 1.2.1
ChimeraX-Tug: 1.0.1
ChimeraX-UI: 1.24.3
ChimeraX-uniprot: 2.2.1
ChimeraX-UnitCell: 1.0.1
ChimeraX-ViewDockX: 1.1.4
ChimeraX-VIPERdb: 1.0
ChimeraX-Vive: 1.1
ChimeraX-VolumeMenu: 1.0.1
ChimeraX-VTK: 1.0
ChimeraX-WavefrontOBJ: 1.0
ChimeraX-WebCam: 1.0.1
ChimeraX-WebServices: 1.1.0
ChimeraX-Zone: 1.0.1
colorama: 0.4.5
cxservices: 1.2
cycler: 0.11.0
Cython: 0.29.32
debugpy: 1.6.4
decorator: 5.1.1
docutils: 0.19
entrypoints: 0.4
executing: 1.2.0
filelock: 3.7.1
fonttools: 4.38.0
funcparserlib: 1.0.1
grako: 3.16.5
h5py: 3.7.0
html2text: 2020.1.16
idna: 3.4
ihm: 0.33
imagecodecs: 2022.7.31
imagesize: 1.4.1
importlib-metadata: 5.1.0
ipykernel: 6.15.3
ipython: 8.4.0
ipython-genutils: 0.2.0
jedi: 0.18.1
Jinja2: 3.1.2
jupyter-client: 7.3.4
jupyter-core: 5.1.0
kiwisolver: 1.4.4
line-profiler: 3.5.1
lxml: 4.9.1
lz4: 4.0.2
MarkupSafe: 2.1.1
matplotlib: 3.5.2
matplotlib-inline: 0.1.6
msgpack: 1.0.4
nest-asyncio: 1.5.6
netCDF4: 1.6.0
networkx: 2.8.5
numexpr: 2.8.4
numpy: 1.23.1
openvr: 1.23.701
packaging: 21.3
ParmEd: 3.4.3
parso: 0.8.3
pep517: 0.13.0
pexpect: 4.8.0
pickleshare: 0.7.5
Pillow: 9.2.0
pip: 22.2.2
pkginfo: 1.8.3
platformdirs: 2.5.4
prompt-toolkit: 3.0.33
psutil: 5.9.1
ptyprocess: 0.7.0
pure-eval: 0.2.2
pycollada: 0.7.2
pydicom: 2.3.0
Pygments: 2.12.0
PyOpenGL: 3.1.5
PyOpenGL-accelerate: 3.1.5
pyparsing: 3.0.9
PyQt6-commercial: 6.3.1
PyQt6-Qt6: 6.3.2
PyQt6-sip: 13.4.0
PyQt6-WebEngine-commercial: 6.3.1
PyQt6-WebEngine-Qt6: 6.3.2
python-dateutil: 2.8.2
pytz: 2022.6
pyzmq: 24.0.1
qtconsole: 5.3.1
QtPy: 2.3.0
RandomWords: 0.4.0
requests: 2.28.1
scipy: 1.9.0
setuptools: 65.1.1
setuptools-scm: 7.0.5
sfftk-rw: 0.7.2
six: 1.16.0
snowballstemmer: 2.2.0
sortedcontainers: 2.4.0
Sphinx: 5.1.1
sphinx-autodoc-typehints: 1.19.1
sphinxcontrib-applehelp: 1.0.2
sphinxcontrib-blockdiag: 3.0.0
sphinxcontrib-devhelp: 1.0.2
sphinxcontrib-htmlhelp: 2.0.0
sphinxcontrib-jsmath: 1.0.1
sphinxcontrib-qthelp: 1.0.3
sphinxcontrib-serializinghtml: 1.1.5
stack-data: 0.6.2
tables: 3.7.0
tifffile: 2022.7.31
tinyarray: 1.2.4
tomli: 2.0.1
tornado: 6.2
traitlets: 5.3.0
typing-extensions: 4.4.0
urllib3: 1.26.13
wcwidth: 0.2.5
webcolors: 1.12
wheel: 0.37.1
wheel-filename: 1.4.1
zipp: 3.11.0
Change History (4)
comment:1 by , 3 years ago
| Cc: | added |
|---|---|
| Component: | Unassigned → Input/Output |
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → "styling lost" in hand-edited mmCIF |
comment:2 by , 3 years ago
follow-up: 3 comment:3 by , 3 years ago
Dear Greg, Thanks for your reply. The files I have been tasked to update are PDB's internal files that are then (at least in principle) translated into styled public file versions. It will be great to have the fallback path available so that I can readily visualize my changes--I look forward to trying it out. Cathy
comment:4 by , 3 years ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Added fallback path to read the mmCIF file without PDBx/mmCIF styling when it thought to be styled (audit_conform.dict_name is mmcif_pdbx.dic and audit_conform.dict_version > 4), but isn't.
This also "fixes" reading the unstylized Mol* mmCIF export output, albeit with a performance cost.
This fix will be in the next daily build, and in the 1.6 release.
Note:
See TracTickets
for help on using tickets.
Not surprising. ChimeraX depends on the PDBx/mmCIF styling for a 3X read speed improvement. The styling is shown on https://mmcif.wwpdb.org/docs/faqs/pdbx-mmcif-faq-general.html. Line up your hand edited columns and you should be fine. Only the atom_site and atom_site_aniso mmCIF tables need to be styled. As an aside, I have a pending email to info@… complaining about the lack of commitment to PDBx/mmCIF styling. It's not hard to do, and it is extremely helpful.
That said, I will be putting in a fallback path so files like this will work, just much slower. I'll let you know when that is done.