Skip to content

Release Notes for version 1.1.0

James Hester edited this page Jul 3, 2026 · 6 revisions

What's changed in version 1.1.0

The multiblock dictionary provides definitions that allow datasets to be spread over multiple data blocks while maintaining well-defined relationships between data items in all data blocks. Therefore it does not usually define data names that capture particular concepts, instead defining a web of linked data names to show how the information in various loops is related. The current update assigns new identifiers to a number of categories, together with their linked data names.

Below is a short summary of the main differences since the initial release. A full list of all changes is available here.

A new STRUCTURE category

The concept of a crystal structure is pervasive in CIF dictionaries, but there is no way to assign a structure to a data name, and neither is it made clear which data names contribute to the definition of a structure. Of course, as long as only a single structure is considered, there is no practical need to clarify at a formal level what is meant by 'structure', as the community understands the data names that are needed. However, as soon as a data item should refer to a structure (e.g. "the average structure", "the parent structure"), formal definition becomes necessary. The multiblock dictionary now includes a STRUCTURE category, which attaches an identifier to a structure using _structure.id, and distributes child key data names of this identifier to all Loop categories involved in describing the structure. Other data names in the STRUCTURE category link to the space group and unit cell, and dictionaries that import the multiblock dictionary can add child key data names to categories which provide further structural information, whether that be magnetic structure or modulated structure. A STRUCTURE as defined in the multiblock dictionary typically consists of the space group, unit cell, and atomic sites.

As long as data blocks adhere to the default _audit.schema, it is sufficient to state the value of _structure.id in the data block, after which the values of all child key data names can be assumed and therefore elided. Where only one structure is present in a data set, _structure.id and non-key linked data names can also be omitted.

Rethinking radiation sources and wavelengths

Radiation descriptions now have their own identifier (_diffrn_radiation.id), a link to which (_diffrn_radiation_wavelength.radiation_id) is used to associate one or more wavelengths to the source. Separate category DIFFRN_SOURCE, which describes non-radiation aspects of the radiation source, such as location or manufacturer, has a single linked key data name _diffrn_source.radiation_id. _diffrn_radiation.id therefore serves as an identifier for the radiation source.

Non-key data name _diffrn.diffrn_radiation_id is provided to associate the radiation source with a particular measurement. Note that the PDBx/mmCIF view is that DIFFRN_SOURCE, DIFFRN_RADIATION and DIFFRN_RADIATION_WAVELENGTH are per-experiment in that mmCIF specifies links to _diffrn.id as keys. This means wavelengths and source characteristics would have to be restated for every measurement, which is cumbersome for experiments where hundreds of measurements may be conducted on a single sample at multiple temperatures from a single radiation source. This discrepancy with mmCIF currently has minimal practical effect, as PDB depositions appear not to include multiple values of _diffrn.id.

Detectors are measurement-independent

In the same way as the DIFFRN_* categories above, detectors have been provided with a top-level identifier _diffrn_detector.id and _diffrn_detector.diffrn_id provided as a non-key data name for compatibility with mmCIF. This means that multiple measurements using the same detector need not specify all detector characteristics for every measurement, but can simply use the value of _diffrn_detector.id.

Measurement setup

Just as for detectors, the equipment configuration and measurement strategy described in DIFFRN_MEASUREMENT is assigned an identifier and can be re-used over multiple measurements by setting _diffrn.diffrn_measurement_id to the appropriate value.

Molecular models: MODEL

The molecular model identifier _model.id has been added to the previously empty MODEL category. Categories that assume a particular molecular model, such as GEOM_BOND and GEOM_ANGLE, have had links to this identifier added. The addition of _model.structure_id (see above discussion of the STRUCTURE category) allows different molecular connectivity to be described for the same structure.

More experimental conditions dependencies (_diffrn.id)

DIFFRN_REFLN now has explicit link _diffrn_refln.diffrn_id to the diffraction conditions under which the raw reflections were collected.

AUDIT_DATASET

AUDIT_DATASET has been introduced to the core dictionary as a way of identifying which data blocks belong together in a single data set. It is mentioned here as users of the multiblock dictionary are encouraged to use it to help identify related data blocks.

Other

An author list and explicit licence (CC-BY-4.0) has been added.