OPTIMADE
OPTIMADE copied to clipboard
Impurities and (n)elements (a.k.a. Shyam's wrench)
I'll throw a wrench into the discussion.
nelements
should equal len(elements)
, this is fine.
In an experiment with known impurities, a DB might want to list those impurities but not include them in the element_ratios
, so then the list length would not match between elements
and element_ratios
Originally posted by @shyamd in https://github.com/Materials-Consortia/OPTIMADE/issues/349#issuecomment-855955706
... The statistical aspects of compositions are handled by species
and species_at_sites
, but there is currently no linkage from species_at_sites
to elements
, e.g. we do not require that set(symbol for species in entry.attributes.species for symbol in species.chemical_symbols) == entry.attributes.elements
. Of course, impurity could mean 10% or it could mean 0.00001%...
I would suggest that given the existing interpretation (or lack thereof) of the specification, we should still merge this pending further discussion. This requirement has been implicit (and is coded up in the python-tools models, for example); if we decide to relax it based on this impurity use-case then that will not be a breaking change.
Originally posted by @ml-evs in https://github.com/Materials-Consortia/OPTIMADE/issues/349#issuecomment-855967360