Materials-Consortia / OPTIMADE

Specification of a common REST API for access to materials databases
https://optimade.org/specification
Creative Commons Attribution 4.0 International
83 stars 37 forks source link

_cif_ prefix #329

Open rartino opened 4 years ago

rartino commented 4 years ago

On the OPTIMADE call came up the idea of a _cif_ prefix (which was previously suggested and at the time rejected in #143).

The idea is that any identifier _x defined in the CIF standard (https://www.iucr.org/resources/cif/dictionaries) which can be represented with OPTIMADE datatypes MAY be provided under the name _cif_x. CIF loop data is represented as OPTIMADE correlated lists.

The maintainer for this prefix would be OPTIMADE (i.e., we ourselves). There may be some more work to do in that we need to keep, and maintain, a record over CIF identifiers where the representation in terms of OPTIMADE datatypes is not obvious and how they should be represented.

One thing this prefix can be used for is to allow queries against COD for chemical formulas containing H, D, T (see #327), if that functionality isn't easily provided in the OPTIMADE structure representation.

merkys commented 4 years ago

In https://github.com/Materials-Consortia/optimade-python-tools/issues/552 I have suggested using subnamespace cif_ of structure property namespace. This is in contrast to defining _cif_ prefix like database-specific prefix, which is described here earlier by @rartino. My suggestion would not require solving #328, but reserving a subnamespace in structure property namespace would also be a new thing.

merkys commented 5 months ago

With the merging of #473 this should be much more easier to implement now:

  1. Fork https://github.com/Materials-Consortia/definition-provider-template as optimade-namespace-cif
  2. Create an automated tool to convert CIF dictionaries to property definitions, possibly by reusing dic2owl tool from https://github.com/emmo-repo/CIF-ontology