@mat3ra/esse 2025.7.29-0 → 2025.8.6-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/js/example/materials_category_components/operations/core/combinations/stack.json +11 -1
  2. package/dist/js/example/software/template.json +1 -0
  3. package/dist/js/example/software_directory/modeling/unit/execution.json +13 -2
  4. package/dist/js/example/software_directory/scripting/unit/execution.json +13 -2
  5. package/dist/js/schema/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +174 -3687
  6. package/dist/js/schema/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +174 -3687
  7. package/dist/js/schema/materials_category/defective_structures/two_dimensional/adatom/configuration.json +46 -0
  8. package/dist/js/schema/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +174 -3687
  9. package/dist/js/schema/materials_category/defective_structures/two_dimensional/island/configuration.json +69 -0
  10. package/dist/js/schema/materials_category/defective_structures/two_dimensional/terrace/configuration.json +69 -0
  11. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanoribbon.json +46 -0
  12. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanotape.json +23 -0
  13. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab.json +23 -0
  14. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +23 -0
  15. package/dist/js/schema/materials_category_components/entities/reusable/{repetitions.json → three_dimensional/repetitions.json} +1 -1
  16. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +46 -0
  17. package/dist/js/schema/materials_category_components/operations/core/combinations/stack.json +23 -0
  18. package/dist/js/schema/software/template.json +6 -1
  19. package/dist/js/schema/software_directory/modeling/unit/execution.json +6 -1
  20. package/dist/js/schema/software_directory/scripting/unit/execution.json +6 -1
  21. package/dist/js/schema/workflow/unit/input/_input.json +6 -1
  22. package/dist/js/schema/workflow/unit/input/_inputItem.json +6 -1
  23. package/dist/js/schemas.json +1 -1
  24. package/dist/js/types.d.ts +1878 -7908
  25. package/example/materials_category_components/entities/reusable/three-dimensional/repetitions.json +3 -0
  26. package/example/materials_category_components/operations/core/combinations/stack.json +12 -2
  27. package/example/software/template.json +1 -0
  28. package/example/software_directory/modeling/unit/execution.json +1 -2
  29. package/example/software_directory/scripting/unit/execution.json +1 -2
  30. package/package.json +1 -1
  31. package/schema/materials_category/compound_pristine_structures/two-dimensional/interface/configuration.json +0 -6
  32. package/schema/materials_category/manifest.yaml +55 -133
  33. package/schema/materials_category_components/entities/reusable/{repetitions.json → three-dimensional/repetitions.json} +1 -1
  34. package/schema/materials_category_components/operations/core/combinations/stack.json +17 -0
  35. package/schema/workflow/unit/input/_inputItem.json +6 -1
  36. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.json +0 -306
  37. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.json +0 -1815
  38. package/example/materials_category/pristine_structures/two-dimensional/slab_strained_supercell_with_gap.json +0 -56
  39. package/example/materials_category_components/entities/reusable/repetitions.json +0 -1
  40. package/schema/materials_category/pristine_structures/two-dimensional/slab_strained_supercell_with_gap.json +0 -18
  41. /package/dist/js/example/materials_category_components/entities/reusable/{repetitions.json → three_dimensional/repetitions.json} +0 -0
@@ -1790,3646 +1790,87 @@
1790
1790
  "y",
1791
1791
  "z"
1792
1792
  ]
1793
- }
1794
- }
1795
- },
1796
- {
1797
- "$schema": "http://json-schema.org/draft-07/schema#",
1798
- "title": "Slab Strained Supercell Configuration Schema",
1799
- "description": "A slab structure configuration with supercell transformation and strain matrix in the xy plane",
1800
- "required": [
1801
- "direction",
1802
- "stack_components",
1803
- "strain_matrix",
1804
- "xy_supercell_matrix"
1805
- ],
1806
- "type": "object",
1807
- "properties": {
1808
- "xy_supercell_matrix": {
1809
- "$schema": "http://json-schema.org/draft-07/schema#",
1810
- "title": "Supercell Matrix 2D Schema",
1811
- "description": "Supercell matrix for xy plane transformations",
1812
- "type": "array",
1813
- "minItems": 2,
1814
- "maxItems": 2,
1815
- "default": [
1816
- [
1817
- 1,
1818
- 0
1819
- ],
1820
- [
1821
- 0,
1822
- 1
1823
- ]
1824
- ],
1825
- "items": {
1826
- "type": "array",
1827
- "minItems": 2,
1828
- "maxItems": 2,
1829
- "items": {
1830
- "type": "integer"
1831
- }
1832
- }
1833
- },
1834
- "strain_matrix": {
1835
- "$schema": "http://json-schema.org/draft-07/schema#",
1836
- "title": "matrix 3x3 schema",
1837
- "type": "array",
1838
- "minItems": 3,
1839
- "maxItems": 3,
1840
- "items": {
1841
- "$schema": "http://json-schema.org/draft-07/schema#",
1842
- "title": "array of 3 number elements schema",
1843
- "type": "array",
1844
- "minItems": 3,
1845
- "maxItems": 3,
1846
- "items": {
1847
- "type": "number"
1848
- }
1849
- }
1850
- },
1851
- "stack_components": {
1852
- "type": "array",
1853
- "minItems": 2,
1854
- "maxItems": 2,
1855
- "items": [
1856
- {
1857
- "$schema": "http://json-schema.org/draft-07/schema#",
1858
- "title": "Atomic Layers Unique Repeated Schema",
1859
- "description": "Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination",
1860
- "type": "object",
1861
- "required": [
1862
- "crystal",
1863
- "miller_indices",
1864
- "number_of_repetitions",
1865
- "termination_top"
1866
- ],
1867
- "properties": {
1868
- "termination_top": {
1869
- "$schema": "http://json-schema.org/draft-07/schema#",
1870
- "title": "Termination Schema",
1871
- "description": "Defines a specific termination of a slab",
1872
- "type": "object",
1873
- "required": [
1874
- "chemical_elements",
1875
- "space_group_symmetry_label"
1876
- ],
1877
- "properties": {
1878
- "chemical_elements": {
1879
- "title": "Chemical Elements",
1880
- "description": "Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')",
1881
- "type": "string",
1882
- "anyOf": [
1883
- {
1884
- "enum": [
1885
- "H",
1886
- "He",
1887
- "Li",
1888
- "Be",
1889
- "B",
1890
- "C",
1891
- "N",
1892
- "O",
1893
- "F",
1894
- "Ne",
1895
- "Na",
1896
- "Mg",
1897
- "Al",
1898
- "Si",
1899
- "P",
1900
- "S",
1901
- "Cl",
1902
- "Ar",
1903
- "K",
1904
- "Ca",
1905
- "Sc",
1906
- "Ti",
1907
- "V",
1908
- "Cr",
1909
- "Mn",
1910
- "Fe",
1911
- "Co",
1912
- "Ni",
1913
- "Cu",
1914
- "Zn",
1915
- "Ga",
1916
- "Ge",
1917
- "As",
1918
- "Se",
1919
- "Br",
1920
- "Kr",
1921
- "Rb",
1922
- "Sr",
1923
- "Y",
1924
- "Zr",
1925
- "Nb",
1926
- "Mo",
1927
- "Tc",
1928
- "Ru",
1929
- "Rh",
1930
- "Pd",
1931
- "Ag",
1932
- "Cd",
1933
- "In",
1934
- "Sn",
1935
- "Sb",
1936
- "Te",
1937
- "I",
1938
- "Xe",
1939
- "Cs",
1940
- "Ba",
1941
- "La",
1942
- "Ce",
1943
- "Pr",
1944
- "Nd",
1945
- "Pm",
1946
- "Sm",
1947
- "Eu",
1948
- "Gd",
1949
- "Tb",
1950
- "Dy",
1951
- "Ho",
1952
- "Er",
1953
- "Tm",
1954
- "Yb",
1955
- "Lu",
1956
- "Hf",
1957
- "Ta",
1958
- "W",
1959
- "Re",
1960
- "Os",
1961
- "Ir",
1962
- "Pt",
1963
- "Au",
1964
- "Hg",
1965
- "Tl",
1966
- "Pb",
1967
- "Bi",
1968
- "Po",
1969
- "At",
1970
- "Rn",
1971
- "Fr",
1972
- "Ra",
1973
- "Ac",
1974
- "Th",
1975
- "Pa",
1976
- "U",
1977
- "Np",
1978
- "Pu",
1979
- "Am",
1980
- "Cm",
1981
- "Bk",
1982
- "Cf",
1983
- "Es",
1984
- "Fm",
1985
- "Md",
1986
- "No",
1987
- "Lr",
1988
- "Rf",
1989
- "Db",
1990
- "Sg",
1991
- "Bh",
1992
- "Hs",
1993
- "Mt",
1994
- "Ds",
1995
- "Rg",
1996
- "Cn",
1997
- "Nh",
1998
- "Fl",
1999
- "Mc",
2000
- "Lv",
2001
- "Ts",
2002
- "Og"
2003
- ]
2004
- },
2005
- {
2006
- "type": "string",
2007
- "description": "A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'",
2008
- "pattern": "^([A-Z][a-z]?[0-9]*)+$"
2009
- }
2010
- ]
2011
- },
2012
- "space_group_symmetry_label": {
2013
- "title": "Space Group Symmetry Label",
2014
- "description": "Space group symmetry designation for the termination",
2015
- "type": "string"
2016
- }
2017
- }
2018
- },
2019
- "number_of_repetitions": {
2020
- "type": "integer",
2021
- "minimum": 1,
2022
- "description": "Number of repetitions of the unique atomic layers"
2023
- },
2024
- "miller_indices": {
2025
- "$schema": "http://json-schema.org/draft-07/schema#",
2026
- "title": "Miller Indices Schema",
2027
- "description": "Miller indices [h, k, l] defining crystallographic planes",
2028
- "default": [
2029
- 0,
2030
- 0,
2031
- 1
2032
- ],
2033
- "type": "array",
2034
- "minItems": 3,
2035
- "maxItems": 3,
2036
- "items": {
2037
- "type": "integer"
2038
- }
2039
- },
2040
- "crystal": {
2041
- "$schema": "http://json-schema.org/draft-07/schema#",
2042
- "title": "Crystal Schema",
2043
- "description": "A crystal structure, referencing the base material schema",
2044
- "type": "object",
2045
- "required": [
2046
- "basis",
2047
- "lattice"
2048
- ],
2049
- "properties": {
2050
- "formula": {
2051
- "description": "reduced chemical formula",
2052
- "type": "string"
2053
- },
2054
- "unitCellFormula": {
2055
- "description": "chemical formula based on the number of atoms of each element in the supercell",
2056
- "type": "string"
2057
- },
2058
- "basis": {
2059
- "$schema": "http://json-schema.org/draft-07/schema#",
2060
- "title": "basis schema",
2061
- "type": "object",
2062
- "required": [
2063
- "elements",
2064
- "coordinates"
2065
- ],
2066
- "properties": {
2067
- "elements": {
2068
- "$schema": "http://json-schema.org/draft-07/schema#",
2069
- "title": "atomic elements schema",
2070
- "description": "atomic elements schema",
2071
- "type": "array",
2072
- "items": {
2073
- "$schema": "http://json-schema.org/draft-07/schema#",
2074
- "title": "atomic element schema",
2075
- "description": "chemical element of an atom according to the periodic table",
2076
- "type": "object",
2077
- "required": [
2078
- "id",
2079
- "value"
2080
- ],
2081
- "properties": {
2082
- "value": {
2083
- "description": "All elements, including extra elements",
2084
- "anyOf": [
2085
- {
2086
- "enum": [
2087
- "H",
2088
- "He",
2089
- "Li",
2090
- "Be",
2091
- "B",
2092
- "C",
2093
- "N",
2094
- "O",
2095
- "F",
2096
- "Ne",
2097
- "Na",
2098
- "Mg",
2099
- "Al",
2100
- "Si",
2101
- "P",
2102
- "S",
2103
- "Cl",
2104
- "Ar",
2105
- "K",
2106
- "Ca",
2107
- "Sc",
2108
- "Ti",
2109
- "V",
2110
- "Cr",
2111
- "Mn",
2112
- "Fe",
2113
- "Co",
2114
- "Ni",
2115
- "Cu",
2116
- "Zn",
2117
- "Ga",
2118
- "Ge",
2119
- "As",
2120
- "Se",
2121
- "Br",
2122
- "Kr",
2123
- "Rb",
2124
- "Sr",
2125
- "Y",
2126
- "Zr",
2127
- "Nb",
2128
- "Mo",
2129
- "Tc",
2130
- "Ru",
2131
- "Rh",
2132
- "Pd",
2133
- "Ag",
2134
- "Cd",
2135
- "In",
2136
- "Sn",
2137
- "Sb",
2138
- "Te",
2139
- "I",
2140
- "Xe",
2141
- "Cs",
2142
- "Ba",
2143
- "La",
2144
- "Ce",
2145
- "Pr",
2146
- "Nd",
2147
- "Pm",
2148
- "Sm",
2149
- "Eu",
2150
- "Gd",
2151
- "Tb",
2152
- "Dy",
2153
- "Ho",
2154
- "Er",
2155
- "Tm",
2156
- "Yb",
2157
- "Lu",
2158
- "Hf",
2159
- "Ta",
2160
- "W",
2161
- "Re",
2162
- "Os",
2163
- "Ir",
2164
- "Pt",
2165
- "Au",
2166
- "Hg",
2167
- "Tl",
2168
- "Pb",
2169
- "Bi",
2170
- "Po",
2171
- "At",
2172
- "Rn",
2173
- "Fr",
2174
- "Ra",
2175
- "Ac",
2176
- "Th",
2177
- "Pa",
2178
- "U",
2179
- "Np",
2180
- "Pu",
2181
- "Am",
2182
- "Cm",
2183
- "Bk",
2184
- "Cf",
2185
- "Es",
2186
- "Fm",
2187
- "Md",
2188
- "No",
2189
- "Lr",
2190
- "Rf",
2191
- "Db",
2192
- "Sg",
2193
- "Bh",
2194
- "Hs",
2195
- "Mt",
2196
- "Ds",
2197
- "Rg",
2198
- "Cn",
2199
- "Nh",
2200
- "Fl",
2201
- "Mc",
2202
- "Lv",
2203
- "Ts",
2204
- "Og"
2205
- ]
2206
- },
2207
- {
2208
- "description": "Extra elements, used for convenience purposed",
2209
- "enum": [
2210
- "X",
2211
- "Vac"
2212
- ]
2213
- }
2214
- ],
2215
- "type": "string"
2216
- },
2217
- "id": {
2218
- "description": "integer id of this entry",
2219
- "type": "integer"
2220
- }
2221
- }
2222
- }
2223
- },
2224
- "coordinates": {
2225
- "$schema": "http://json-schema.org/draft-07/schema#",
2226
- "title": "atomic coordinates schema",
2227
- "description": "atomic coordinates schema",
2228
- "type": "array",
2229
- "items": {
2230
- "$schema": "http://json-schema.org/draft-07/schema#",
2231
- "title": "atomic coordinate schema",
2232
- "description": "coordinate of an atom",
2233
- "type": "object",
2234
- "required": [
2235
- "id",
2236
- "value"
2237
- ],
2238
- "properties": {
2239
- "value": {
2240
- "$schema": "http://json-schema.org/draft-07/schema#",
2241
- "title": "coordinate 3d schema",
2242
- "type": "array",
2243
- "minItems": 3,
2244
- "maxItems": 3,
2245
- "description": "value of this entry",
2246
- "items": {
2247
- "type": "number"
2248
- }
2249
- },
2250
- "id": {
2251
- "description": "integer id of this entry",
2252
- "type": "integer"
2253
- }
2254
- }
2255
- }
2256
- },
2257
- "units": {
2258
- "$schema": "http://json-schema.org/draft-07/schema#",
2259
- "title": "basis units enum",
2260
- "enum": [
2261
- "crystal",
2262
- "cartesian"
2263
- ],
2264
- "default": "crystal"
2265
- },
2266
- "labels": {
2267
- "$schema": "http://json-schema.org/draft-07/schema#",
2268
- "title": "atomic labels schema",
2269
- "description": "atomic labels schema",
2270
- "type": "array",
2271
- "items": {
2272
- "$schema": "http://json-schema.org/draft-07/schema#",
2273
- "title": "atomic label schema",
2274
- "description": "Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.",
2275
- "type": "object",
2276
- "required": [
2277
- "id",
2278
- "value"
2279
- ],
2280
- "properties": {
2281
- "value": {
2282
- "anyOf": [
2283
- {
2284
- "type": [
2285
- "integer",
2286
- "string",
2287
- "number"
2288
- ]
2289
- },
2290
- {
2291
- "$schema": "http://json-schema.org/draft-07/schema#",
2292
- "title": "integer positive single digit",
2293
- "type": "integer",
2294
- "minimum": 1,
2295
- "maximum": 9
2296
- }
2297
- ],
2298
- "description": "value of this entry"
2299
- },
2300
- "id": {
2301
- "description": "integer id of this entry",
2302
- "type": "integer"
2303
- }
2304
- }
2305
- }
2306
- }
2307
- }
2308
- },
2309
- "lattice": {
2310
- "$schema": "http://json-schema.org/draft-07/schema#",
2311
- "title": "lattice schema",
2312
- "type": "object",
2313
- "required": [
2314
- "a",
2315
- "b",
2316
- "c",
2317
- "alpha",
2318
- "beta",
2319
- "gamma"
2320
- ],
2321
- "properties": {
2322
- "a": {
2323
- "description": "length of the first lattice vector",
2324
- "type": "number"
2325
- },
2326
- "b": {
2327
- "description": "length of the second lattice vector",
2328
- "type": "number"
2329
- },
2330
- "c": {
2331
- "description": "length of the third lattice vector",
2332
- "type": "number"
2333
- },
2334
- "alpha": {
2335
- "description": "angle between first and second lattice vector",
2336
- "type": "number"
2337
- },
2338
- "beta": {
2339
- "description": "angle between second and third lattice vector",
2340
- "type": "number"
2341
- },
2342
- "gamma": {
2343
- "description": "angle between first and third lattice vector",
2344
- "type": "number"
2345
- },
2346
- "vectors": {
2347
- "$schema": "http://json-schema.org/draft-07/schema#",
2348
- "title": "lattice vectors schema",
2349
- "type": "object",
2350
- "required": [
2351
- "a",
2352
- "b",
2353
- "c"
2354
- ],
2355
- "properties": {
2356
- "a": {
2357
- "$schema": "http://json-schema.org/draft-07/schema#",
2358
- "title": "vector 3d schema",
2359
- "type": "array",
2360
- "minItems": 3,
2361
- "maxItems": 3,
2362
- "items": {
2363
- "type": "number"
2364
- }
2365
- },
2366
- "b": {
2367
- "$schema": "http://json-schema.org/draft-07/schema#",
2368
- "title": "vector 3d schema",
2369
- "type": "array",
2370
- "minItems": 3,
2371
- "maxItems": 3,
2372
- "items": {
2373
- "type": "number"
2374
- }
2375
- },
2376
- "c": {
2377
- "$schema": "http://json-schema.org/draft-07/schema#",
2378
- "title": "vector 3d schema",
2379
- "type": "array",
2380
- "minItems": 3,
2381
- "maxItems": 3,
2382
- "items": {
2383
- "type": "number"
2384
- }
2385
- },
2386
- "alat": {
2387
- "description": "lattice parameter for fractional coordinates",
2388
- "type": "number",
2389
- "default": 1
2390
- },
2391
- "units": {
2392
- "$schema": "http://json-schema.org/draft-07/schema#",
2393
- "title": "lattice vectors units enum",
2394
- "enum": [
2395
- "angstrom",
2396
- "bohr"
2397
- ],
2398
- "default": "angstrom"
2399
- }
2400
- }
2401
- },
2402
- "type": {
2403
- "$schema": "http://json-schema.org/draft-07/schema#",
2404
- "title": "lattice type enum",
2405
- "type": "string",
2406
- "enum": [
2407
- "CUB",
2408
- "BCC",
2409
- "FCC",
2410
- "TET",
2411
- "MCL",
2412
- "ORC",
2413
- "ORCC",
2414
- "ORCF",
2415
- "ORCI",
2416
- "HEX",
2417
- "BCT",
2418
- "TRI",
2419
- "MCLC",
2420
- "RHL"
2421
- ],
2422
- "default": "TRI"
2423
- },
2424
- "units": {
2425
- "$schema": "http://json-schema.org/draft-07/schema#",
2426
- "title": "Lattice units schema",
2427
- "type": "object",
2428
- "default": {
2429
- "length": "angstrom",
2430
- "angle": "degree"
2431
- },
2432
- "properties": {
2433
- "length": {
2434
- "$schema": "http://json-schema.org/draft-07/schema#",
2435
- "title": "lattice units length enum",
2436
- "enum": [
2437
- "angstrom",
2438
- "bohr"
2439
- ],
2440
- "default": "angstrom"
2441
- },
2442
- "angle": {
2443
- "$schema": "http://json-schema.org/draft-07/schema#",
2444
- "title": "lattice units angle enum",
2445
- "enum": [
2446
- "degree",
2447
- "radian"
2448
- ],
2449
- "default": "degree"
2450
- }
2451
- }
2452
- }
2453
- }
2454
- },
2455
- "derivedProperties": {
2456
- "$schema": "http://json-schema.org/draft-07/schema#",
2457
- "title": "derived properties schema",
2458
- "type": "array",
2459
- "items": {
2460
- "oneOf": [
2461
- {
2462
- "$schema": "http://json-schema.org/draft-07/schema#",
2463
- "title": "volume schema",
2464
- "type": "object",
2465
- "required": [
2466
- "value"
2467
- ],
2468
- "properties": {
2469
- "name": {
2470
- "enum": [
2471
- "volume"
2472
- ]
2473
- },
2474
- "units": {
2475
- "enum": [
2476
- "angstrom^3"
2477
- ]
2478
- },
2479
- "value": {
2480
- "type": "number"
2481
- }
2482
- }
2483
- },
2484
- {
2485
- "$schema": "http://json-schema.org/draft-07/schema#",
2486
- "title": "density schema",
2487
- "type": "object",
2488
- "required": [
2489
- "value"
2490
- ],
2491
- "properties": {
2492
- "name": {
2493
- "enum": [
2494
- "density"
2495
- ]
2496
- },
2497
- "units": {
2498
- "enum": [
2499
- "g/cm^3"
2500
- ]
2501
- },
2502
- "value": {
2503
- "type": "number"
2504
- }
2505
- }
2506
- },
2507
- {
2508
- "$schema": "http://json-schema.org/draft-07/schema#",
2509
- "title": "symmetry schema",
2510
- "type": "object",
2511
- "properties": {
2512
- "pointGroupSymbol": {
2513
- "description": "point group symbol in Schoenflies notation",
2514
- "type": "string"
2515
- },
2516
- "spaceGroupSymbol": {
2517
- "description": "space group symbol in Hermann–Mauguin notation",
2518
- "type": "string"
2519
- },
2520
- "tolerance": {
2521
- "type": "object",
2522
- "description": "tolerance used for symmetry calculation",
2523
- "$schema": "http://json-schema.org/draft-07/schema#",
2524
- "title": "scalar schema",
2525
- "required": [
2526
- "value"
2527
- ],
2528
- "properties": {
2529
- "units": {
2530
- "enum": [
2531
- "angstrom"
2532
- ]
2533
- },
2534
- "value": {
2535
- "type": "number"
2536
- }
2537
- }
2538
- },
2539
- "name": {
2540
- "enum": [
2541
- "symmetry"
2542
- ]
2543
- }
2544
- }
2545
- },
2546
- {
2547
- "$schema": "http://json-schema.org/draft-07/schema#",
2548
- "title": "elemental-ratio",
2549
- "description": "ration of this element in the compound",
2550
- "type": "object",
2551
- "required": [
2552
- "value"
2553
- ],
2554
- "properties": {
2555
- "name": {
2556
- "enum": [
2557
- "elemental_ratio"
2558
- ]
2559
- },
2560
- "value": {
2561
- "type": "number",
2562
- "minimum": 0,
2563
- "maximum": 1
2564
- },
2565
- "element": {
2566
- "type": "string",
2567
- "description": "the element this ratio is for"
2568
- }
2569
- }
2570
- },
2571
- {
2572
- "$schema": "http://json-schema.org/draft-07/schema#",
2573
- "title": "p_norm",
2574
- "description": "https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm",
2575
- "type": "object",
2576
- "required": [
2577
- "value"
2578
- ],
2579
- "properties": {
2580
- "name": {
2581
- "enum": [
2582
- "p-norm"
2583
- ]
2584
- },
2585
- "degree": {
2586
- "type": "integer",
2587
- "description": "degree of the dimensionality of the norm"
2588
- },
2589
- "value": {
2590
- "type": "number"
2591
- }
2592
- }
2593
- },
2594
- {
2595
- "$schema": "http://json-schema.org/draft-07/schema#",
2596
- "title": "InChI representation schema",
2597
- "type": "object",
2598
- "required": [
2599
- "value"
2600
- ],
2601
- "properties": {
2602
- "name": {
2603
- "enum": [
2604
- "inchi"
2605
- ]
2606
- },
2607
- "value": {
2608
- "type": "string"
2609
- }
2610
- }
2611
- },
2612
- {
2613
- "$schema": "http://json-schema.org/draft-07/schema#",
2614
- "title": "InChI key representation schema",
2615
- "type": "object",
2616
- "required": [
2617
- "value"
2618
- ],
2619
- "properties": {
2620
- "name": {
2621
- "enum": [
2622
- "inchi_key"
2623
- ]
2624
- },
2625
- "value": {
2626
- "type": "string"
2627
- }
2628
- }
2629
- }
2630
- ],
2631
- "discriminator": {
2632
- "propertyName": "name"
2633
- },
2634
- "required": [
2635
- "name"
2636
- ]
2637
- }
2638
- },
2639
- "external": {
2640
- "$schema": "http://json-schema.org/draft-07/schema#",
2641
- "title": "database source schema",
2642
- "description": "information about a database source",
2643
- "type": "object",
2644
- "required": [
2645
- "id",
2646
- "source",
2647
- "origin"
2648
- ],
2649
- "properties": {
2650
- "id": {
2651
- "description": "ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32",
2652
- "oneOf": [
2653
- {
2654
- "type": "string"
2655
- },
2656
- {
2657
- "type": "number"
2658
- }
2659
- ]
2660
- },
2661
- "source": {
2662
- "description": "Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.",
2663
- "type": "string"
2664
- },
2665
- "origin": {
2666
- "description": "Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).",
2667
- "type": "boolean"
2668
- },
2669
- "data": {
2670
- "description": "Original response from external source.",
2671
- "type": "object"
2672
- },
2673
- "doi": {
2674
- "description": "Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506",
2675
- "type": "string"
2676
- },
2677
- "url": {
2678
- "description": "The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers",
2679
- "type": "string"
2680
- }
2681
- }
2682
- },
2683
- "src": {
2684
- "$schema": "http://json-schema.org/draft-07/schema#",
2685
- "title": "file source schema",
2686
- "description": "file source with the information inside",
2687
- "type": "object",
2688
- "required": [
2689
- "filename",
2690
- "text",
2691
- "hash"
2692
- ],
2693
- "properties": {
2694
- "extension": {
2695
- "description": "file extension",
2696
- "type": "string"
2697
- },
2698
- "filename": {
2699
- "description": "file name without extension",
2700
- "type": "string"
2701
- },
2702
- "text": {
2703
- "description": "file content as raw text",
2704
- "type": "string"
2705
- },
2706
- "hash": {
2707
- "description": "MD5 hash based on file content",
2708
- "type": "string"
2709
- }
2710
- }
2711
- },
2712
- "scaledHash": {
2713
- "description": "Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).",
2714
- "type": "string"
2715
- },
2716
- "icsdId": {
2717
- "description": "Corresponding ICSD id of the material",
2718
- "type": "integer"
2719
- },
2720
- "isNonPeriodic": {
2721
- "description": "Whether to work in the finite molecular picture (usually with atomic orbital basis)",
2722
- "type": "boolean"
2723
- },
2724
- "consistencyChecks": {
2725
- "type": "array",
2726
- "items": {
2727
- "$schema": "http://json-schema.org/draft-07/schema#",
2728
- "title": "material consistency check schema",
2729
- "type": "object",
2730
- "description": "The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.",
2731
- "required": [
2732
- "key",
2733
- "name",
2734
- "severity",
2735
- "message"
2736
- ],
2737
- "properties": {
2738
- "name": {
2739
- "type": "string",
2740
- "enum": [
2741
- "default",
2742
- "atomsTooClose",
2743
- "atomsOverlap"
2744
- ],
2745
- "description": "Name of the consistency check that is performed, which is listed in an enum."
2746
- },
2747
- "key": {
2748
- "type": "string",
2749
- "description": "Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"
2750
- },
2751
- "severity": {
2752
- "enum": [
2753
- "info",
2754
- "warning",
2755
- "error"
2756
- ],
2757
- "description": "Severity level of the problem, which is used in UI to differentiate."
2758
- },
2759
- "message": {
2760
- "type": "string",
2761
- "description": "Message generated by the consistency check describing the problem."
2762
- }
2763
- }
2764
- }
2765
- },
2766
- "_id": {
2767
- "description": "entity identity",
2768
- "type": "string"
2769
- },
2770
- "slug": {
2771
- "description": "entity slug",
2772
- "type": "string"
2773
- },
2774
- "systemName": {
2775
- "type": "string"
2776
- },
2777
- "schemaVersion": {
2778
- "description": "entity's schema version. Used to distinct between different schemas.",
2779
- "type": "string",
2780
- "default": "2022.8.16"
2781
- },
2782
- "name": {
2783
- "description": "entity name",
2784
- "type": "string"
2785
- },
2786
- "isDefault": {
2787
- "description": "Identifies that entity is defaultable",
2788
- "type": "boolean",
2789
- "default": false
2790
- },
2791
- "metadata": {
2792
- "type": "object"
2793
- }
2794
- }
2795
- },
2796
- "use_conventional_cell": {
2797
- "type": "boolean",
2798
- "description": "Use the conventional cell for the crystal structure",
2799
- "default": true
2800
- }
2801
- }
2802
- },
2803
- {
2804
- "$schema": "http://json-schema.org/draft-07/schema#",
2805
- "title": "Vacuum Configuration Schema",
2806
- "description": "A vacuum slab that breaks periodicity in a specified direction",
2807
- "type": "object",
2808
- "required": [
2809
- "direction",
2810
- "size",
2811
- "crystal"
2812
- ],
2813
- "properties": {
2814
- "direction": {
2815
- "$schema": "http://json-schema.org/draft-07/schema#",
2816
- "title": "Axis Enum",
2817
- "type": "string",
2818
- "description": "Enum for axis types",
2819
- "enum": [
2820
- "x",
2821
- "y",
2822
- "z"
2823
- ]
2824
- },
2825
- "size": {
2826
- "type": "number",
2827
- "description": "Size of the vacuum slab in angstroms",
2828
- "minimum": 0,
2829
- "default": 10
2830
- },
2831
- "crystal": {
2832
- "$schema": "http://json-schema.org/draft-07/schema#",
2833
- "title": "Crystal Schema",
2834
- "description": "A crystal structure, referencing the base material schema",
2835
- "type": "object",
2836
- "required": [
2837
- "basis",
2838
- "lattice"
2839
- ],
2840
- "properties": {
2841
- "formula": {
2842
- "description": "reduced chemical formula",
2843
- "type": "string"
2844
- },
2845
- "unitCellFormula": {
2846
- "description": "chemical formula based on the number of atoms of each element in the supercell",
2847
- "type": "string"
2848
- },
2849
- "basis": {
2850
- "$schema": "http://json-schema.org/draft-07/schema#",
2851
- "title": "basis schema",
2852
- "type": "object",
2853
- "required": [
2854
- "elements",
2855
- "coordinates"
2856
- ],
2857
- "properties": {
2858
- "elements": {
2859
- "$schema": "http://json-schema.org/draft-07/schema#",
2860
- "title": "atomic elements schema",
2861
- "description": "atomic elements schema",
2862
- "type": "array",
2863
- "items": {
2864
- "$schema": "http://json-schema.org/draft-07/schema#",
2865
- "title": "atomic element schema",
2866
- "description": "chemical element of an atom according to the periodic table",
2867
- "type": "object",
2868
- "required": [
2869
- "id",
2870
- "value"
2871
- ],
2872
- "properties": {
2873
- "value": {
2874
- "description": "All elements, including extra elements",
2875
- "anyOf": [
2876
- {
2877
- "enum": [
2878
- "H",
2879
- "He",
2880
- "Li",
2881
- "Be",
2882
- "B",
2883
- "C",
2884
- "N",
2885
- "O",
2886
- "F",
2887
- "Ne",
2888
- "Na",
2889
- "Mg",
2890
- "Al",
2891
- "Si",
2892
- "P",
2893
- "S",
2894
- "Cl",
2895
- "Ar",
2896
- "K",
2897
- "Ca",
2898
- "Sc",
2899
- "Ti",
2900
- "V",
2901
- "Cr",
2902
- "Mn",
2903
- "Fe",
2904
- "Co",
2905
- "Ni",
2906
- "Cu",
2907
- "Zn",
2908
- "Ga",
2909
- "Ge",
2910
- "As",
2911
- "Se",
2912
- "Br",
2913
- "Kr",
2914
- "Rb",
2915
- "Sr",
2916
- "Y",
2917
- "Zr",
2918
- "Nb",
2919
- "Mo",
2920
- "Tc",
2921
- "Ru",
2922
- "Rh",
2923
- "Pd",
2924
- "Ag",
2925
- "Cd",
2926
- "In",
2927
- "Sn",
2928
- "Sb",
2929
- "Te",
2930
- "I",
2931
- "Xe",
2932
- "Cs",
2933
- "Ba",
2934
- "La",
2935
- "Ce",
2936
- "Pr",
2937
- "Nd",
2938
- "Pm",
2939
- "Sm",
2940
- "Eu",
2941
- "Gd",
2942
- "Tb",
2943
- "Dy",
2944
- "Ho",
2945
- "Er",
2946
- "Tm",
2947
- "Yb",
2948
- "Lu",
2949
- "Hf",
2950
- "Ta",
2951
- "W",
2952
- "Re",
2953
- "Os",
2954
- "Ir",
2955
- "Pt",
2956
- "Au",
2957
- "Hg",
2958
- "Tl",
2959
- "Pb",
2960
- "Bi",
2961
- "Po",
2962
- "At",
2963
- "Rn",
2964
- "Fr",
2965
- "Ra",
2966
- "Ac",
2967
- "Th",
2968
- "Pa",
2969
- "U",
2970
- "Np",
2971
- "Pu",
2972
- "Am",
2973
- "Cm",
2974
- "Bk",
2975
- "Cf",
2976
- "Es",
2977
- "Fm",
2978
- "Md",
2979
- "No",
2980
- "Lr",
2981
- "Rf",
2982
- "Db",
2983
- "Sg",
2984
- "Bh",
2985
- "Hs",
2986
- "Mt",
2987
- "Ds",
2988
- "Rg",
2989
- "Cn",
2990
- "Nh",
2991
- "Fl",
2992
- "Mc",
2993
- "Lv",
2994
- "Ts",
2995
- "Og"
2996
- ]
2997
- },
2998
- {
2999
- "description": "Extra elements, used for convenience purposed",
3000
- "enum": [
3001
- "X",
3002
- "Vac"
3003
- ]
3004
- }
3005
- ],
3006
- "type": "string"
3007
- },
3008
- "id": {
3009
- "description": "integer id of this entry",
3010
- "type": "integer"
3011
- }
3012
- }
3013
- }
3014
- },
3015
- "coordinates": {
3016
- "$schema": "http://json-schema.org/draft-07/schema#",
3017
- "title": "atomic coordinates schema",
3018
- "description": "atomic coordinates schema",
3019
- "type": "array",
3020
- "items": {
3021
- "$schema": "http://json-schema.org/draft-07/schema#",
3022
- "title": "atomic coordinate schema",
3023
- "description": "coordinate of an atom",
3024
- "type": "object",
3025
- "required": [
3026
- "id",
3027
- "value"
3028
- ],
3029
- "properties": {
3030
- "value": {
3031
- "$schema": "http://json-schema.org/draft-07/schema#",
3032
- "title": "coordinate 3d schema",
3033
- "type": "array",
3034
- "minItems": 3,
3035
- "maxItems": 3,
3036
- "description": "value of this entry",
3037
- "items": {
3038
- "type": "number"
3039
- }
3040
- },
3041
- "id": {
3042
- "description": "integer id of this entry",
3043
- "type": "integer"
3044
- }
3045
- }
3046
- }
3047
- },
3048
- "units": {
3049
- "$schema": "http://json-schema.org/draft-07/schema#",
3050
- "title": "basis units enum",
3051
- "enum": [
3052
- "crystal",
3053
- "cartesian"
3054
- ],
3055
- "default": "crystal"
3056
- },
3057
- "labels": {
3058
- "$schema": "http://json-schema.org/draft-07/schema#",
3059
- "title": "atomic labels schema",
3060
- "description": "atomic labels schema",
3061
- "type": "array",
3062
- "items": {
3063
- "$schema": "http://json-schema.org/draft-07/schema#",
3064
- "title": "atomic label schema",
3065
- "description": "Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.",
3066
- "type": "object",
3067
- "required": [
3068
- "id",
3069
- "value"
3070
- ],
3071
- "properties": {
3072
- "value": {
3073
- "anyOf": [
3074
- {
3075
- "type": [
3076
- "integer",
3077
- "string",
3078
- "number"
3079
- ]
3080
- },
3081
- {
3082
- "$schema": "http://json-schema.org/draft-07/schema#",
3083
- "title": "integer positive single digit",
3084
- "type": "integer",
3085
- "minimum": 1,
3086
- "maximum": 9
3087
- }
3088
- ],
3089
- "description": "value of this entry"
3090
- },
3091
- "id": {
3092
- "description": "integer id of this entry",
3093
- "type": "integer"
3094
- }
3095
- }
3096
- }
3097
- }
3098
- }
3099
- },
3100
- "lattice": {
3101
- "$schema": "http://json-schema.org/draft-07/schema#",
3102
- "title": "lattice schema",
3103
- "type": "object",
3104
- "required": [
3105
- "a",
3106
- "b",
3107
- "c",
3108
- "alpha",
3109
- "beta",
3110
- "gamma"
3111
- ],
3112
- "properties": {
3113
- "a": {
3114
- "description": "length of the first lattice vector",
3115
- "type": "number"
3116
- },
3117
- "b": {
3118
- "description": "length of the second lattice vector",
3119
- "type": "number"
3120
- },
3121
- "c": {
3122
- "description": "length of the third lattice vector",
3123
- "type": "number"
3124
- },
3125
- "alpha": {
3126
- "description": "angle between first and second lattice vector",
3127
- "type": "number"
3128
- },
3129
- "beta": {
3130
- "description": "angle between second and third lattice vector",
3131
- "type": "number"
3132
- },
3133
- "gamma": {
3134
- "description": "angle between first and third lattice vector",
3135
- "type": "number"
3136
- },
3137
- "vectors": {
3138
- "$schema": "http://json-schema.org/draft-07/schema#",
3139
- "title": "lattice vectors schema",
3140
- "type": "object",
3141
- "required": [
3142
- "a",
3143
- "b",
3144
- "c"
3145
- ],
3146
- "properties": {
3147
- "a": {
3148
- "$schema": "http://json-schema.org/draft-07/schema#",
3149
- "title": "vector 3d schema",
3150
- "type": "array",
3151
- "minItems": 3,
3152
- "maxItems": 3,
3153
- "items": {
3154
- "type": "number"
3155
- }
3156
- },
3157
- "b": {
3158
- "$schema": "http://json-schema.org/draft-07/schema#",
3159
- "title": "vector 3d schema",
3160
- "type": "array",
3161
- "minItems": 3,
3162
- "maxItems": 3,
3163
- "items": {
3164
- "type": "number"
3165
- }
3166
- },
3167
- "c": {
3168
- "$schema": "http://json-schema.org/draft-07/schema#",
3169
- "title": "vector 3d schema",
3170
- "type": "array",
3171
- "minItems": 3,
3172
- "maxItems": 3,
3173
- "items": {
3174
- "type": "number"
3175
- }
3176
- },
3177
- "alat": {
3178
- "description": "lattice parameter for fractional coordinates",
3179
- "type": "number",
3180
- "default": 1
3181
- },
3182
- "units": {
3183
- "$schema": "http://json-schema.org/draft-07/schema#",
3184
- "title": "lattice vectors units enum",
3185
- "enum": [
3186
- "angstrom",
3187
- "bohr"
3188
- ],
3189
- "default": "angstrom"
3190
- }
3191
- }
3192
- },
3193
- "type": {
3194
- "$schema": "http://json-schema.org/draft-07/schema#",
3195
- "title": "lattice type enum",
3196
- "type": "string",
3197
- "enum": [
3198
- "CUB",
3199
- "BCC",
3200
- "FCC",
3201
- "TET",
3202
- "MCL",
3203
- "ORC",
3204
- "ORCC",
3205
- "ORCF",
3206
- "ORCI",
3207
- "HEX",
3208
- "BCT",
3209
- "TRI",
3210
- "MCLC",
3211
- "RHL"
3212
- ],
3213
- "default": "TRI"
3214
- },
3215
- "units": {
3216
- "$schema": "http://json-schema.org/draft-07/schema#",
3217
- "title": "Lattice units schema",
3218
- "type": "object",
3219
- "default": {
3220
- "length": "angstrom",
3221
- "angle": "degree"
3222
- },
3223
- "properties": {
3224
- "length": {
3225
- "$schema": "http://json-schema.org/draft-07/schema#",
3226
- "title": "lattice units length enum",
3227
- "enum": [
3228
- "angstrom",
3229
- "bohr"
3230
- ],
3231
- "default": "angstrom"
3232
- },
3233
- "angle": {
3234
- "$schema": "http://json-schema.org/draft-07/schema#",
3235
- "title": "lattice units angle enum",
3236
- "enum": [
3237
- "degree",
3238
- "radian"
3239
- ],
3240
- "default": "degree"
3241
- }
3242
- }
3243
- }
3244
- }
3245
- },
3246
- "derivedProperties": {
3247
- "$schema": "http://json-schema.org/draft-07/schema#",
3248
- "title": "derived properties schema",
3249
- "type": "array",
3250
- "items": {
3251
- "oneOf": [
3252
- {
3253
- "$schema": "http://json-schema.org/draft-07/schema#",
3254
- "title": "volume schema",
3255
- "type": "object",
3256
- "required": [
3257
- "value"
3258
- ],
3259
- "properties": {
3260
- "name": {
3261
- "enum": [
3262
- "volume"
3263
- ]
3264
- },
3265
- "units": {
3266
- "enum": [
3267
- "angstrom^3"
3268
- ]
3269
- },
3270
- "value": {
3271
- "type": "number"
3272
- }
3273
- }
3274
- },
3275
- {
3276
- "$schema": "http://json-schema.org/draft-07/schema#",
3277
- "title": "density schema",
3278
- "type": "object",
3279
- "required": [
3280
- "value"
3281
- ],
3282
- "properties": {
3283
- "name": {
3284
- "enum": [
3285
- "density"
3286
- ]
3287
- },
3288
- "units": {
3289
- "enum": [
3290
- "g/cm^3"
3291
- ]
3292
- },
3293
- "value": {
3294
- "type": "number"
3295
- }
3296
- }
3297
- },
3298
- {
3299
- "$schema": "http://json-schema.org/draft-07/schema#",
3300
- "title": "symmetry schema",
3301
- "type": "object",
3302
- "properties": {
3303
- "pointGroupSymbol": {
3304
- "description": "point group symbol in Schoenflies notation",
3305
- "type": "string"
3306
- },
3307
- "spaceGroupSymbol": {
3308
- "description": "space group symbol in Hermann–Mauguin notation",
3309
- "type": "string"
3310
- },
3311
- "tolerance": {
3312
- "type": "object",
3313
- "description": "tolerance used for symmetry calculation",
3314
- "$schema": "http://json-schema.org/draft-07/schema#",
3315
- "title": "scalar schema",
3316
- "required": [
3317
- "value"
3318
- ],
3319
- "properties": {
3320
- "units": {
3321
- "enum": [
3322
- "angstrom"
3323
- ]
3324
- },
3325
- "value": {
3326
- "type": "number"
3327
- }
3328
- }
3329
- },
3330
- "name": {
3331
- "enum": [
3332
- "symmetry"
3333
- ]
3334
- }
3335
- }
3336
- },
3337
- {
3338
- "$schema": "http://json-schema.org/draft-07/schema#",
3339
- "title": "elemental-ratio",
3340
- "description": "ration of this element in the compound",
3341
- "type": "object",
3342
- "required": [
3343
- "value"
3344
- ],
3345
- "properties": {
3346
- "name": {
3347
- "enum": [
3348
- "elemental_ratio"
3349
- ]
3350
- },
3351
- "value": {
3352
- "type": "number",
3353
- "minimum": 0,
3354
- "maximum": 1
3355
- },
3356
- "element": {
3357
- "type": "string",
3358
- "description": "the element this ratio is for"
3359
- }
3360
- }
3361
- },
3362
- {
3363
- "$schema": "http://json-schema.org/draft-07/schema#",
3364
- "title": "p_norm",
3365
- "description": "https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm",
3366
- "type": "object",
3367
- "required": [
3368
- "value"
3369
- ],
3370
- "properties": {
3371
- "name": {
3372
- "enum": [
3373
- "p-norm"
3374
- ]
3375
- },
3376
- "degree": {
3377
- "type": "integer",
3378
- "description": "degree of the dimensionality of the norm"
3379
- },
3380
- "value": {
3381
- "type": "number"
3382
- }
3383
- }
3384
- },
3385
- {
3386
- "$schema": "http://json-schema.org/draft-07/schema#",
3387
- "title": "InChI representation schema",
3388
- "type": "object",
3389
- "required": [
3390
- "value"
3391
- ],
3392
- "properties": {
3393
- "name": {
3394
- "enum": [
3395
- "inchi"
3396
- ]
3397
- },
3398
- "value": {
3399
- "type": "string"
3400
- }
3401
- }
3402
- },
3403
- {
3404
- "$schema": "http://json-schema.org/draft-07/schema#",
3405
- "title": "InChI key representation schema",
3406
- "type": "object",
3407
- "required": [
3408
- "value"
3409
- ],
3410
- "properties": {
3411
- "name": {
3412
- "enum": [
3413
- "inchi_key"
3414
- ]
3415
- },
3416
- "value": {
3417
- "type": "string"
3418
- }
3419
- }
3420
- }
3421
- ],
3422
- "discriminator": {
3423
- "propertyName": "name"
3424
- },
3425
- "required": [
3426
- "name"
3427
- ]
3428
- }
3429
- },
3430
- "external": {
3431
- "$schema": "http://json-schema.org/draft-07/schema#",
3432
- "title": "database source schema",
3433
- "description": "information about a database source",
3434
- "type": "object",
3435
- "required": [
3436
- "id",
3437
- "source",
3438
- "origin"
3439
- ],
3440
- "properties": {
3441
- "id": {
3442
- "description": "ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32",
3443
- "oneOf": [
3444
- {
3445
- "type": "string"
3446
- },
3447
- {
3448
- "type": "number"
3449
- }
3450
- ]
3451
- },
3452
- "source": {
3453
- "description": "Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.",
3454
- "type": "string"
3455
- },
3456
- "origin": {
3457
- "description": "Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).",
3458
- "type": "boolean"
3459
- },
3460
- "data": {
3461
- "description": "Original response from external source.",
3462
- "type": "object"
3463
- },
3464
- "doi": {
3465
- "description": "Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506",
3466
- "type": "string"
3467
- },
3468
- "url": {
3469
- "description": "The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers",
3470
- "type": "string"
3471
- }
3472
- }
3473
- },
3474
- "src": {
3475
- "$schema": "http://json-schema.org/draft-07/schema#",
3476
- "title": "file source schema",
3477
- "description": "file source with the information inside",
3478
- "type": "object",
3479
- "required": [
3480
- "filename",
3481
- "text",
3482
- "hash"
3483
- ],
3484
- "properties": {
3485
- "extension": {
3486
- "description": "file extension",
3487
- "type": "string"
3488
- },
3489
- "filename": {
3490
- "description": "file name without extension",
3491
- "type": "string"
3492
- },
3493
- "text": {
3494
- "description": "file content as raw text",
3495
- "type": "string"
3496
- },
3497
- "hash": {
3498
- "description": "MD5 hash based on file content",
3499
- "type": "string"
3500
- }
3501
- }
3502
- },
3503
- "scaledHash": {
3504
- "description": "Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).",
3505
- "type": "string"
3506
- },
3507
- "icsdId": {
3508
- "description": "Corresponding ICSD id of the material",
3509
- "type": "integer"
3510
- },
3511
- "isNonPeriodic": {
3512
- "description": "Whether to work in the finite molecular picture (usually with atomic orbital basis)",
3513
- "type": "boolean"
3514
- },
3515
- "consistencyChecks": {
3516
- "type": "array",
3517
- "items": {
3518
- "$schema": "http://json-schema.org/draft-07/schema#",
3519
- "title": "material consistency check schema",
3520
- "type": "object",
3521
- "description": "The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.",
3522
- "required": [
3523
- "key",
3524
- "name",
3525
- "severity",
3526
- "message"
3527
- ],
3528
- "properties": {
3529
- "name": {
3530
- "type": "string",
3531
- "enum": [
3532
- "default",
3533
- "atomsTooClose",
3534
- "atomsOverlap"
3535
- ],
3536
- "description": "Name of the consistency check that is performed, which is listed in an enum."
3537
- },
3538
- "key": {
3539
- "type": "string",
3540
- "description": "Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"
3541
- },
3542
- "severity": {
3543
- "enum": [
3544
- "info",
3545
- "warning",
3546
- "error"
3547
- ],
3548
- "description": "Severity level of the problem, which is used in UI to differentiate."
3549
- },
3550
- "message": {
3551
- "type": "string",
3552
- "description": "Message generated by the consistency check describing the problem."
3553
- }
3554
- }
3555
- }
3556
- },
3557
- "_id": {
3558
- "description": "entity identity",
3559
- "type": "string"
3560
- },
3561
- "slug": {
3562
- "description": "entity slug",
3563
- "type": "string"
3564
- },
3565
- "systemName": {
3566
- "type": "string"
3567
- },
3568
- "schemaVersion": {
3569
- "description": "entity's schema version. Used to distinct between different schemas.",
3570
- "type": "string",
3571
- "default": "2022.8.16"
3572
- },
3573
- "name": {
3574
- "description": "entity name",
3575
- "type": "string"
3576
- },
3577
- "isDefault": {
3578
- "description": "Identifies that entity is defaultable",
3579
- "type": "boolean",
3580
- "default": false
3581
- },
3582
- "metadata": {
3583
- "type": "object"
3584
- }
3585
- }
3586
- }
3587
- }
3588
- }
3589
- ]
3590
- },
3591
- "direction": {
3592
- "default": "z",
3593
- "$schema": "http://json-schema.org/draft-07/schema#",
3594
- "title": "Axis Enum",
3595
- "type": "string",
3596
- "description": "Enum for axis types",
3597
- "enum": [
3598
- "x",
3599
- "y",
3600
- "z"
3601
- ]
3602
- }
3603
- }
3604
- },
3605
- {
3606
- "$schema": "http://json-schema.org/draft-07/schema#",
3607
- "title": "Slab Strained Supercell with Gap Configuration Schema",
3608
- "description": "A slab structure configuration with supercell transformation, strain matrix, and optional gap for film positioning",
3609
- "required": [
3610
- "direction",
3611
- "stack_components",
3612
- "strain_matrix",
3613
- "xy_supercell_matrix"
3614
- ],
3615
- "type": "object",
3616
- "properties": {
3617
- "gap": {
3618
- "type": "number",
3619
- "description": "If provided, the film is shifted to have it as smallest distance to the substrate",
3620
- "minimum": 0
3621
- },
3622
- "xy_supercell_matrix": {
3623
- "$schema": "http://json-schema.org/draft-07/schema#",
3624
- "title": "Supercell Matrix 2D Schema",
3625
- "description": "Supercell matrix for xy plane transformations",
3626
- "type": "array",
3627
- "minItems": 2,
3628
- "maxItems": 2,
3629
- "default": [
3630
- [
3631
- 1,
3632
- 0
3633
- ],
3634
- [
3635
- 0,
3636
- 1
3637
- ]
3638
- ],
3639
- "items": {
3640
- "type": "array",
3641
- "minItems": 2,
3642
- "maxItems": 2,
3643
- "items": {
3644
- "type": "integer"
3645
- }
3646
- }
3647
- },
3648
- "strain_matrix": {
3649
- "$schema": "http://json-schema.org/draft-07/schema#",
3650
- "title": "matrix 3x3 schema",
3651
- "type": "array",
3652
- "minItems": 3,
3653
- "maxItems": 3,
3654
- "items": {
3655
- "$schema": "http://json-schema.org/draft-07/schema#",
3656
- "title": "array of 3 number elements schema",
3657
- "type": "array",
3658
- "minItems": 3,
3659
- "maxItems": 3,
3660
- "items": {
3661
- "type": "number"
3662
- }
3663
- }
3664
- },
3665
- "stack_components": {
3666
- "type": "array",
3667
- "minItems": 2,
3668
- "maxItems": 2,
3669
- "items": [
3670
- {
3671
- "$schema": "http://json-schema.org/draft-07/schema#",
3672
- "title": "Atomic Layers Unique Repeated Schema",
3673
- "description": "Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination",
3674
- "type": "object",
3675
- "required": [
3676
- "crystal",
3677
- "miller_indices",
3678
- "number_of_repetitions",
3679
- "termination_top"
3680
- ],
3681
- "properties": {
3682
- "termination_top": {
3683
- "$schema": "http://json-schema.org/draft-07/schema#",
3684
- "title": "Termination Schema",
3685
- "description": "Defines a specific termination of a slab",
3686
- "type": "object",
3687
- "required": [
3688
- "chemical_elements",
3689
- "space_group_symmetry_label"
3690
- ],
3691
- "properties": {
3692
- "chemical_elements": {
3693
- "title": "Chemical Elements",
3694
- "description": "Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')",
3695
- "type": "string",
3696
- "anyOf": [
3697
- {
3698
- "enum": [
3699
- "H",
3700
- "He",
3701
- "Li",
3702
- "Be",
3703
- "B",
3704
- "C",
3705
- "N",
3706
- "O",
3707
- "F",
3708
- "Ne",
3709
- "Na",
3710
- "Mg",
3711
- "Al",
3712
- "Si",
3713
- "P",
3714
- "S",
3715
- "Cl",
3716
- "Ar",
3717
- "K",
3718
- "Ca",
3719
- "Sc",
3720
- "Ti",
3721
- "V",
3722
- "Cr",
3723
- "Mn",
3724
- "Fe",
3725
- "Co",
3726
- "Ni",
3727
- "Cu",
3728
- "Zn",
3729
- "Ga",
3730
- "Ge",
3731
- "As",
3732
- "Se",
3733
- "Br",
3734
- "Kr",
3735
- "Rb",
3736
- "Sr",
3737
- "Y",
3738
- "Zr",
3739
- "Nb",
3740
- "Mo",
3741
- "Tc",
3742
- "Ru",
3743
- "Rh",
3744
- "Pd",
3745
- "Ag",
3746
- "Cd",
3747
- "In",
3748
- "Sn",
3749
- "Sb",
3750
- "Te",
3751
- "I",
3752
- "Xe",
3753
- "Cs",
3754
- "Ba",
3755
- "La",
3756
- "Ce",
3757
- "Pr",
3758
- "Nd",
3759
- "Pm",
3760
- "Sm",
3761
- "Eu",
3762
- "Gd",
3763
- "Tb",
3764
- "Dy",
3765
- "Ho",
3766
- "Er",
3767
- "Tm",
3768
- "Yb",
3769
- "Lu",
3770
- "Hf",
3771
- "Ta",
3772
- "W",
3773
- "Re",
3774
- "Os",
3775
- "Ir",
3776
- "Pt",
3777
- "Au",
3778
- "Hg",
3779
- "Tl",
3780
- "Pb",
3781
- "Bi",
3782
- "Po",
3783
- "At",
3784
- "Rn",
3785
- "Fr",
3786
- "Ra",
3787
- "Ac",
3788
- "Th",
3789
- "Pa",
3790
- "U",
3791
- "Np",
3792
- "Pu",
3793
- "Am",
3794
- "Cm",
3795
- "Bk",
3796
- "Cf",
3797
- "Es",
3798
- "Fm",
3799
- "Md",
3800
- "No",
3801
- "Lr",
3802
- "Rf",
3803
- "Db",
3804
- "Sg",
3805
- "Bh",
3806
- "Hs",
3807
- "Mt",
3808
- "Ds",
3809
- "Rg",
3810
- "Cn",
3811
- "Nh",
3812
- "Fl",
3813
- "Mc",
3814
- "Lv",
3815
- "Ts",
3816
- "Og"
3817
- ]
3818
- },
3819
- {
3820
- "type": "string",
3821
- "description": "A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'",
3822
- "pattern": "^([A-Z][a-z]?[0-9]*)+$"
3823
- }
3824
- ]
3825
- },
3826
- "space_group_symmetry_label": {
3827
- "title": "Space Group Symmetry Label",
3828
- "description": "Space group symmetry designation for the termination",
3829
- "type": "string"
3830
- }
3831
- }
3832
- },
3833
- "number_of_repetitions": {
3834
- "type": "integer",
3835
- "minimum": 1,
3836
- "description": "Number of repetitions of the unique atomic layers"
3837
- },
3838
- "miller_indices": {
3839
- "$schema": "http://json-schema.org/draft-07/schema#",
3840
- "title": "Miller Indices Schema",
3841
- "description": "Miller indices [h, k, l] defining crystallographic planes",
3842
- "default": [
3843
- 0,
3844
- 0,
3845
- 1
3846
- ],
3847
- "type": "array",
3848
- "minItems": 3,
3849
- "maxItems": 3,
3850
- "items": {
3851
- "type": "integer"
3852
- }
3853
- },
3854
- "crystal": {
3855
- "$schema": "http://json-schema.org/draft-07/schema#",
3856
- "title": "Crystal Schema",
3857
- "description": "A crystal structure, referencing the base material schema",
3858
- "type": "object",
3859
- "required": [
3860
- "basis",
3861
- "lattice"
3862
- ],
3863
- "properties": {
3864
- "formula": {
3865
- "description": "reduced chemical formula",
3866
- "type": "string"
3867
- },
3868
- "unitCellFormula": {
3869
- "description": "chemical formula based on the number of atoms of each element in the supercell",
3870
- "type": "string"
3871
- },
3872
- "basis": {
3873
- "$schema": "http://json-schema.org/draft-07/schema#",
3874
- "title": "basis schema",
3875
- "type": "object",
3876
- "required": [
3877
- "elements",
3878
- "coordinates"
3879
- ],
3880
- "properties": {
3881
- "elements": {
3882
- "$schema": "http://json-schema.org/draft-07/schema#",
3883
- "title": "atomic elements schema",
3884
- "description": "atomic elements schema",
3885
- "type": "array",
3886
- "items": {
3887
- "$schema": "http://json-schema.org/draft-07/schema#",
3888
- "title": "atomic element schema",
3889
- "description": "chemical element of an atom according to the periodic table",
3890
- "type": "object",
3891
- "required": [
3892
- "id",
3893
- "value"
3894
- ],
3895
- "properties": {
3896
- "value": {
3897
- "description": "All elements, including extra elements",
3898
- "anyOf": [
3899
- {
3900
- "enum": [
3901
- "H",
3902
- "He",
3903
- "Li",
3904
- "Be",
3905
- "B",
3906
- "C",
3907
- "N",
3908
- "O",
3909
- "F",
3910
- "Ne",
3911
- "Na",
3912
- "Mg",
3913
- "Al",
3914
- "Si",
3915
- "P",
3916
- "S",
3917
- "Cl",
3918
- "Ar",
3919
- "K",
3920
- "Ca",
3921
- "Sc",
3922
- "Ti",
3923
- "V",
3924
- "Cr",
3925
- "Mn",
3926
- "Fe",
3927
- "Co",
3928
- "Ni",
3929
- "Cu",
3930
- "Zn",
3931
- "Ga",
3932
- "Ge",
3933
- "As",
3934
- "Se",
3935
- "Br",
3936
- "Kr",
3937
- "Rb",
3938
- "Sr",
3939
- "Y",
3940
- "Zr",
3941
- "Nb",
3942
- "Mo",
3943
- "Tc",
3944
- "Ru",
3945
- "Rh",
3946
- "Pd",
3947
- "Ag",
3948
- "Cd",
3949
- "In",
3950
- "Sn",
3951
- "Sb",
3952
- "Te",
3953
- "I",
3954
- "Xe",
3955
- "Cs",
3956
- "Ba",
3957
- "La",
3958
- "Ce",
3959
- "Pr",
3960
- "Nd",
3961
- "Pm",
3962
- "Sm",
3963
- "Eu",
3964
- "Gd",
3965
- "Tb",
3966
- "Dy",
3967
- "Ho",
3968
- "Er",
3969
- "Tm",
3970
- "Yb",
3971
- "Lu",
3972
- "Hf",
3973
- "Ta",
3974
- "W",
3975
- "Re",
3976
- "Os",
3977
- "Ir",
3978
- "Pt",
3979
- "Au",
3980
- "Hg",
3981
- "Tl",
3982
- "Pb",
3983
- "Bi",
3984
- "Po",
3985
- "At",
3986
- "Rn",
3987
- "Fr",
3988
- "Ra",
3989
- "Ac",
3990
- "Th",
3991
- "Pa",
3992
- "U",
3993
- "Np",
3994
- "Pu",
3995
- "Am",
3996
- "Cm",
3997
- "Bk",
3998
- "Cf",
3999
- "Es",
4000
- "Fm",
4001
- "Md",
4002
- "No",
4003
- "Lr",
4004
- "Rf",
4005
- "Db",
4006
- "Sg",
4007
- "Bh",
4008
- "Hs",
4009
- "Mt",
4010
- "Ds",
4011
- "Rg",
4012
- "Cn",
4013
- "Nh",
4014
- "Fl",
4015
- "Mc",
4016
- "Lv",
4017
- "Ts",
4018
- "Og"
4019
- ]
4020
- },
4021
- {
4022
- "description": "Extra elements, used for convenience purposed",
4023
- "enum": [
4024
- "X",
4025
- "Vac"
4026
- ]
4027
- }
4028
- ],
4029
- "type": "string"
4030
- },
4031
- "id": {
4032
- "description": "integer id of this entry",
4033
- "type": "integer"
4034
- }
4035
- }
4036
- }
4037
- },
4038
- "coordinates": {
4039
- "$schema": "http://json-schema.org/draft-07/schema#",
4040
- "title": "atomic coordinates schema",
4041
- "description": "atomic coordinates schema",
4042
- "type": "array",
4043
- "items": {
4044
- "$schema": "http://json-schema.org/draft-07/schema#",
4045
- "title": "atomic coordinate schema",
4046
- "description": "coordinate of an atom",
4047
- "type": "object",
4048
- "required": [
4049
- "id",
4050
- "value"
4051
- ],
4052
- "properties": {
4053
- "value": {
4054
- "$schema": "http://json-schema.org/draft-07/schema#",
4055
- "title": "coordinate 3d schema",
4056
- "type": "array",
4057
- "minItems": 3,
4058
- "maxItems": 3,
4059
- "description": "value of this entry",
4060
- "items": {
4061
- "type": "number"
4062
- }
4063
- },
4064
- "id": {
4065
- "description": "integer id of this entry",
4066
- "type": "integer"
4067
- }
4068
- }
4069
- }
4070
- },
4071
- "units": {
4072
- "$schema": "http://json-schema.org/draft-07/schema#",
4073
- "title": "basis units enum",
4074
- "enum": [
4075
- "crystal",
4076
- "cartesian"
4077
- ],
4078
- "default": "crystal"
4079
- },
4080
- "labels": {
4081
- "$schema": "http://json-schema.org/draft-07/schema#",
4082
- "title": "atomic labels schema",
4083
- "description": "atomic labels schema",
4084
- "type": "array",
4085
- "items": {
4086
- "$schema": "http://json-schema.org/draft-07/schema#",
4087
- "title": "atomic label schema",
4088
- "description": "Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.",
4089
- "type": "object",
4090
- "required": [
4091
- "id",
4092
- "value"
4093
- ],
4094
- "properties": {
4095
- "value": {
4096
- "anyOf": [
4097
- {
4098
- "type": [
4099
- "integer",
4100
- "string",
4101
- "number"
4102
- ]
4103
- },
4104
- {
4105
- "$schema": "http://json-schema.org/draft-07/schema#",
4106
- "title": "integer positive single digit",
4107
- "type": "integer",
4108
- "minimum": 1,
4109
- "maximum": 9
4110
- }
4111
- ],
4112
- "description": "value of this entry"
4113
- },
4114
- "id": {
4115
- "description": "integer id of this entry",
4116
- "type": "integer"
4117
- }
4118
- }
4119
- }
4120
- }
4121
- }
4122
- },
4123
- "lattice": {
4124
- "$schema": "http://json-schema.org/draft-07/schema#",
4125
- "title": "lattice schema",
4126
- "type": "object",
4127
- "required": [
4128
- "a",
4129
- "b",
4130
- "c",
4131
- "alpha",
4132
- "beta",
4133
- "gamma"
4134
- ],
4135
- "properties": {
4136
- "a": {
4137
- "description": "length of the first lattice vector",
4138
- "type": "number"
4139
- },
4140
- "b": {
4141
- "description": "length of the second lattice vector",
4142
- "type": "number"
4143
- },
4144
- "c": {
4145
- "description": "length of the third lattice vector",
4146
- "type": "number"
4147
- },
4148
- "alpha": {
4149
- "description": "angle between first and second lattice vector",
4150
- "type": "number"
4151
- },
4152
- "beta": {
4153
- "description": "angle between second and third lattice vector",
4154
- "type": "number"
4155
- },
4156
- "gamma": {
4157
- "description": "angle between first and third lattice vector",
4158
- "type": "number"
4159
- },
4160
- "vectors": {
4161
- "$schema": "http://json-schema.org/draft-07/schema#",
4162
- "title": "lattice vectors schema",
4163
- "type": "object",
4164
- "required": [
4165
- "a",
4166
- "b",
4167
- "c"
4168
- ],
4169
- "properties": {
4170
- "a": {
4171
- "$schema": "http://json-schema.org/draft-07/schema#",
4172
- "title": "vector 3d schema",
4173
- "type": "array",
4174
- "minItems": 3,
4175
- "maxItems": 3,
4176
- "items": {
4177
- "type": "number"
4178
- }
4179
- },
4180
- "b": {
4181
- "$schema": "http://json-schema.org/draft-07/schema#",
4182
- "title": "vector 3d schema",
4183
- "type": "array",
4184
- "minItems": 3,
4185
- "maxItems": 3,
4186
- "items": {
4187
- "type": "number"
4188
- }
4189
- },
4190
- "c": {
4191
- "$schema": "http://json-schema.org/draft-07/schema#",
4192
- "title": "vector 3d schema",
4193
- "type": "array",
4194
- "minItems": 3,
4195
- "maxItems": 3,
4196
- "items": {
4197
- "type": "number"
4198
- }
4199
- },
4200
- "alat": {
4201
- "description": "lattice parameter for fractional coordinates",
4202
- "type": "number",
4203
- "default": 1
4204
- },
4205
- "units": {
4206
- "$schema": "http://json-schema.org/draft-07/schema#",
4207
- "title": "lattice vectors units enum",
4208
- "enum": [
4209
- "angstrom",
4210
- "bohr"
4211
- ],
4212
- "default": "angstrom"
4213
- }
4214
- }
4215
- },
4216
- "type": {
4217
- "$schema": "http://json-schema.org/draft-07/schema#",
4218
- "title": "lattice type enum",
4219
- "type": "string",
4220
- "enum": [
4221
- "CUB",
4222
- "BCC",
4223
- "FCC",
4224
- "TET",
4225
- "MCL",
4226
- "ORC",
4227
- "ORCC",
4228
- "ORCF",
4229
- "ORCI",
4230
- "HEX",
4231
- "BCT",
4232
- "TRI",
4233
- "MCLC",
4234
- "RHL"
4235
- ],
4236
- "default": "TRI"
4237
- },
4238
- "units": {
4239
- "$schema": "http://json-schema.org/draft-07/schema#",
4240
- "title": "Lattice units schema",
4241
- "type": "object",
4242
- "default": {
4243
- "length": "angstrom",
4244
- "angle": "degree"
4245
- },
4246
- "properties": {
4247
- "length": {
4248
- "$schema": "http://json-schema.org/draft-07/schema#",
4249
- "title": "lattice units length enum",
4250
- "enum": [
4251
- "angstrom",
4252
- "bohr"
4253
- ],
4254
- "default": "angstrom"
4255
- },
4256
- "angle": {
4257
- "$schema": "http://json-schema.org/draft-07/schema#",
4258
- "title": "lattice units angle enum",
4259
- "enum": [
4260
- "degree",
4261
- "radian"
4262
- ],
4263
- "default": "degree"
4264
- }
4265
- }
4266
- }
4267
- }
4268
- },
4269
- "derivedProperties": {
4270
- "$schema": "http://json-schema.org/draft-07/schema#",
4271
- "title": "derived properties schema",
4272
- "type": "array",
4273
- "items": {
4274
- "oneOf": [
4275
- {
4276
- "$schema": "http://json-schema.org/draft-07/schema#",
4277
- "title": "volume schema",
4278
- "type": "object",
4279
- "required": [
4280
- "value"
4281
- ],
4282
- "properties": {
4283
- "name": {
4284
- "enum": [
4285
- "volume"
4286
- ]
4287
- },
4288
- "units": {
4289
- "enum": [
4290
- "angstrom^3"
4291
- ]
4292
- },
4293
- "value": {
4294
- "type": "number"
4295
- }
4296
- }
4297
- },
4298
- {
4299
- "$schema": "http://json-schema.org/draft-07/schema#",
4300
- "title": "density schema",
4301
- "type": "object",
4302
- "required": [
4303
- "value"
4304
- ],
4305
- "properties": {
4306
- "name": {
4307
- "enum": [
4308
- "density"
4309
- ]
4310
- },
4311
- "units": {
4312
- "enum": [
4313
- "g/cm^3"
4314
- ]
4315
- },
4316
- "value": {
4317
- "type": "number"
4318
- }
4319
- }
4320
- },
4321
- {
4322
- "$schema": "http://json-schema.org/draft-07/schema#",
4323
- "title": "symmetry schema",
4324
- "type": "object",
4325
- "properties": {
4326
- "pointGroupSymbol": {
4327
- "description": "point group symbol in Schoenflies notation",
4328
- "type": "string"
4329
- },
4330
- "spaceGroupSymbol": {
4331
- "description": "space group symbol in Hermann–Mauguin notation",
4332
- "type": "string"
4333
- },
4334
- "tolerance": {
4335
- "type": "object",
4336
- "description": "tolerance used for symmetry calculation",
4337
- "$schema": "http://json-schema.org/draft-07/schema#",
4338
- "title": "scalar schema",
4339
- "required": [
4340
- "value"
4341
- ],
4342
- "properties": {
4343
- "units": {
4344
- "enum": [
4345
- "angstrom"
4346
- ]
4347
- },
4348
- "value": {
4349
- "type": "number"
4350
- }
4351
- }
4352
- },
4353
- "name": {
4354
- "enum": [
4355
- "symmetry"
4356
- ]
4357
- }
4358
- }
4359
- },
4360
- {
4361
- "$schema": "http://json-schema.org/draft-07/schema#",
4362
- "title": "elemental-ratio",
4363
- "description": "ration of this element in the compound",
4364
- "type": "object",
4365
- "required": [
4366
- "value"
4367
- ],
4368
- "properties": {
4369
- "name": {
4370
- "enum": [
4371
- "elemental_ratio"
4372
- ]
4373
- },
4374
- "value": {
4375
- "type": "number",
4376
- "minimum": 0,
4377
- "maximum": 1
4378
- },
4379
- "element": {
4380
- "type": "string",
4381
- "description": "the element this ratio is for"
4382
- }
4383
- }
4384
- },
4385
- {
4386
- "$schema": "http://json-schema.org/draft-07/schema#",
4387
- "title": "p_norm",
4388
- "description": "https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm",
4389
- "type": "object",
4390
- "required": [
4391
- "value"
4392
- ],
4393
- "properties": {
4394
- "name": {
4395
- "enum": [
4396
- "p-norm"
4397
- ]
4398
- },
4399
- "degree": {
4400
- "type": "integer",
4401
- "description": "degree of the dimensionality of the norm"
4402
- },
4403
- "value": {
4404
- "type": "number"
4405
- }
4406
- }
4407
- },
4408
- {
4409
- "$schema": "http://json-schema.org/draft-07/schema#",
4410
- "title": "InChI representation schema",
4411
- "type": "object",
4412
- "required": [
4413
- "value"
4414
- ],
4415
- "properties": {
4416
- "name": {
4417
- "enum": [
4418
- "inchi"
4419
- ]
4420
- },
4421
- "value": {
4422
- "type": "string"
4423
- }
4424
- }
4425
- },
4426
- {
4427
- "$schema": "http://json-schema.org/draft-07/schema#",
4428
- "title": "InChI key representation schema",
4429
- "type": "object",
4430
- "required": [
4431
- "value"
4432
- ],
4433
- "properties": {
4434
- "name": {
4435
- "enum": [
4436
- "inchi_key"
4437
- ]
4438
- },
4439
- "value": {
4440
- "type": "string"
4441
- }
4442
- }
4443
- }
4444
- ],
4445
- "discriminator": {
4446
- "propertyName": "name"
4447
- },
4448
- "required": [
4449
- "name"
4450
- ]
4451
- }
4452
- },
4453
- "external": {
4454
- "$schema": "http://json-schema.org/draft-07/schema#",
4455
- "title": "database source schema",
4456
- "description": "information about a database source",
4457
- "type": "object",
4458
- "required": [
4459
- "id",
4460
- "source",
4461
- "origin"
4462
- ],
4463
- "properties": {
4464
- "id": {
4465
- "description": "ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32",
4466
- "oneOf": [
4467
- {
4468
- "type": "string"
4469
- },
4470
- {
4471
- "type": "number"
4472
- }
4473
- ]
4474
- },
4475
- "source": {
4476
- "description": "Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.",
4477
- "type": "string"
4478
- },
4479
- "origin": {
4480
- "description": "Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).",
4481
- "type": "boolean"
4482
- },
4483
- "data": {
4484
- "description": "Original response from external source.",
4485
- "type": "object"
4486
- },
4487
- "doi": {
4488
- "description": "Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506",
4489
- "type": "string"
4490
- },
4491
- "url": {
4492
- "description": "The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers",
4493
- "type": "string"
4494
- }
4495
- }
4496
- },
4497
- "src": {
4498
- "$schema": "http://json-schema.org/draft-07/schema#",
4499
- "title": "file source schema",
4500
- "description": "file source with the information inside",
4501
- "type": "object",
4502
- "required": [
4503
- "filename",
4504
- "text",
4505
- "hash"
4506
- ],
4507
- "properties": {
4508
- "extension": {
4509
- "description": "file extension",
4510
- "type": "string"
4511
- },
4512
- "filename": {
4513
- "description": "file name without extension",
4514
- "type": "string"
4515
- },
4516
- "text": {
4517
- "description": "file content as raw text",
4518
- "type": "string"
4519
- },
4520
- "hash": {
4521
- "description": "MD5 hash based on file content",
4522
- "type": "string"
4523
- }
4524
- }
4525
- },
4526
- "scaledHash": {
4527
- "description": "Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).",
4528
- "type": "string"
4529
- },
4530
- "icsdId": {
4531
- "description": "Corresponding ICSD id of the material",
4532
- "type": "integer"
4533
- },
4534
- "isNonPeriodic": {
4535
- "description": "Whether to work in the finite molecular picture (usually with atomic orbital basis)",
4536
- "type": "boolean"
4537
- },
4538
- "consistencyChecks": {
4539
- "type": "array",
4540
- "items": {
4541
- "$schema": "http://json-schema.org/draft-07/schema#",
4542
- "title": "material consistency check schema",
4543
- "type": "object",
4544
- "description": "The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.",
4545
- "required": [
4546
- "key",
4547
- "name",
4548
- "severity",
4549
- "message"
4550
- ],
4551
- "properties": {
4552
- "name": {
4553
- "type": "string",
4554
- "enum": [
4555
- "default",
4556
- "atomsTooClose",
4557
- "atomsOverlap"
4558
- ],
4559
- "description": "Name of the consistency check that is performed, which is listed in an enum."
4560
- },
4561
- "key": {
4562
- "type": "string",
4563
- "description": "Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"
4564
- },
4565
- "severity": {
4566
- "enum": [
4567
- "info",
4568
- "warning",
4569
- "error"
4570
- ],
4571
- "description": "Severity level of the problem, which is used in UI to differentiate."
4572
- },
4573
- "message": {
4574
- "type": "string",
4575
- "description": "Message generated by the consistency check describing the problem."
4576
- }
4577
- }
4578
- }
4579
- },
4580
- "_id": {
4581
- "description": "entity identity",
4582
- "type": "string"
4583
- },
4584
- "slug": {
4585
- "description": "entity slug",
4586
- "type": "string"
4587
- },
4588
- "systemName": {
4589
- "type": "string"
4590
- },
4591
- "schemaVersion": {
4592
- "description": "entity's schema version. Used to distinct between different schemas.",
4593
- "type": "string",
4594
- "default": "2022.8.16"
4595
- },
4596
- "name": {
4597
- "description": "entity name",
4598
- "type": "string"
4599
- },
4600
- "isDefault": {
4601
- "description": "Identifies that entity is defaultable",
4602
- "type": "boolean",
4603
- "default": false
4604
- },
4605
- "metadata": {
4606
- "type": "object"
4607
- }
4608
- }
4609
- },
4610
- "use_conventional_cell": {
4611
- "type": "boolean",
4612
- "description": "Use the conventional cell for the crystal structure",
4613
- "default": true
4614
- }
4615
- }
4616
- },
4617
- {
4618
- "$schema": "http://json-schema.org/draft-07/schema#",
4619
- "title": "Vacuum Configuration Schema",
4620
- "description": "A vacuum slab that breaks periodicity in a specified direction",
4621
- "type": "object",
4622
- "required": [
4623
- "direction",
4624
- "size",
4625
- "crystal"
4626
- ],
4627
- "properties": {
4628
- "direction": {
4629
- "$schema": "http://json-schema.org/draft-07/schema#",
4630
- "title": "Axis Enum",
4631
- "type": "string",
4632
- "description": "Enum for axis types",
4633
- "enum": [
4634
- "x",
4635
- "y",
4636
- "z"
4637
- ]
4638
- },
4639
- "size": {
4640
- "type": "number",
4641
- "description": "Size of the vacuum slab in angstroms",
4642
- "minimum": 0,
4643
- "default": 10
4644
- },
4645
- "crystal": {
4646
- "$schema": "http://json-schema.org/draft-07/schema#",
4647
- "title": "Crystal Schema",
4648
- "description": "A crystal structure, referencing the base material schema",
4649
- "type": "object",
4650
- "required": [
4651
- "basis",
4652
- "lattice"
4653
- ],
4654
- "properties": {
4655
- "formula": {
4656
- "description": "reduced chemical formula",
4657
- "type": "string"
4658
- },
4659
- "unitCellFormula": {
4660
- "description": "chemical formula based on the number of atoms of each element in the supercell",
4661
- "type": "string"
4662
- },
4663
- "basis": {
4664
- "$schema": "http://json-schema.org/draft-07/schema#",
4665
- "title": "basis schema",
4666
- "type": "object",
4667
- "required": [
4668
- "elements",
4669
- "coordinates"
4670
- ],
4671
- "properties": {
4672
- "elements": {
4673
- "$schema": "http://json-schema.org/draft-07/schema#",
4674
- "title": "atomic elements schema",
4675
- "description": "atomic elements schema",
4676
- "type": "array",
4677
- "items": {
4678
- "$schema": "http://json-schema.org/draft-07/schema#",
4679
- "title": "atomic element schema",
4680
- "description": "chemical element of an atom according to the periodic table",
4681
- "type": "object",
4682
- "required": [
4683
- "id",
4684
- "value"
4685
- ],
4686
- "properties": {
4687
- "value": {
4688
- "description": "All elements, including extra elements",
4689
- "anyOf": [
4690
- {
4691
- "enum": [
4692
- "H",
4693
- "He",
4694
- "Li",
4695
- "Be",
4696
- "B",
4697
- "C",
4698
- "N",
4699
- "O",
4700
- "F",
4701
- "Ne",
4702
- "Na",
4703
- "Mg",
4704
- "Al",
4705
- "Si",
4706
- "P",
4707
- "S",
4708
- "Cl",
4709
- "Ar",
4710
- "K",
4711
- "Ca",
4712
- "Sc",
4713
- "Ti",
4714
- "V",
4715
- "Cr",
4716
- "Mn",
4717
- "Fe",
4718
- "Co",
4719
- "Ni",
4720
- "Cu",
4721
- "Zn",
4722
- "Ga",
4723
- "Ge",
4724
- "As",
4725
- "Se",
4726
- "Br",
4727
- "Kr",
4728
- "Rb",
4729
- "Sr",
4730
- "Y",
4731
- "Zr",
4732
- "Nb",
4733
- "Mo",
4734
- "Tc",
4735
- "Ru",
4736
- "Rh",
4737
- "Pd",
4738
- "Ag",
4739
- "Cd",
4740
- "In",
4741
- "Sn",
4742
- "Sb",
4743
- "Te",
4744
- "I",
4745
- "Xe",
4746
- "Cs",
4747
- "Ba",
4748
- "La",
4749
- "Ce",
4750
- "Pr",
4751
- "Nd",
4752
- "Pm",
4753
- "Sm",
4754
- "Eu",
4755
- "Gd",
4756
- "Tb",
4757
- "Dy",
4758
- "Ho",
4759
- "Er",
4760
- "Tm",
4761
- "Yb",
4762
- "Lu",
4763
- "Hf",
4764
- "Ta",
4765
- "W",
4766
- "Re",
4767
- "Os",
4768
- "Ir",
4769
- "Pt",
4770
- "Au",
4771
- "Hg",
4772
- "Tl",
4773
- "Pb",
4774
- "Bi",
4775
- "Po",
4776
- "At",
4777
- "Rn",
4778
- "Fr",
4779
- "Ra",
4780
- "Ac",
4781
- "Th",
4782
- "Pa",
4783
- "U",
4784
- "Np",
4785
- "Pu",
4786
- "Am",
4787
- "Cm",
4788
- "Bk",
4789
- "Cf",
4790
- "Es",
4791
- "Fm",
4792
- "Md",
4793
- "No",
4794
- "Lr",
4795
- "Rf",
4796
- "Db",
4797
- "Sg",
4798
- "Bh",
4799
- "Hs",
4800
- "Mt",
4801
- "Ds",
4802
- "Rg",
4803
- "Cn",
4804
- "Nh",
4805
- "Fl",
4806
- "Mc",
4807
- "Lv",
4808
- "Ts",
4809
- "Og"
4810
- ]
4811
- },
4812
- {
4813
- "description": "Extra elements, used for convenience purposed",
4814
- "enum": [
4815
- "X",
4816
- "Vac"
4817
- ]
4818
- }
4819
- ],
4820
- "type": "string"
4821
- },
4822
- "id": {
4823
- "description": "integer id of this entry",
4824
- "type": "integer"
4825
- }
4826
- }
4827
- }
4828
- },
4829
- "coordinates": {
4830
- "$schema": "http://json-schema.org/draft-07/schema#",
4831
- "title": "atomic coordinates schema",
4832
- "description": "atomic coordinates schema",
4833
- "type": "array",
4834
- "items": {
4835
- "$schema": "http://json-schema.org/draft-07/schema#",
4836
- "title": "atomic coordinate schema",
4837
- "description": "coordinate of an atom",
4838
- "type": "object",
4839
- "required": [
4840
- "id",
4841
- "value"
4842
- ],
4843
- "properties": {
4844
- "value": {
4845
- "$schema": "http://json-schema.org/draft-07/schema#",
4846
- "title": "coordinate 3d schema",
4847
- "type": "array",
4848
- "minItems": 3,
4849
- "maxItems": 3,
4850
- "description": "value of this entry",
4851
- "items": {
4852
- "type": "number"
4853
- }
4854
- },
4855
- "id": {
4856
- "description": "integer id of this entry",
4857
- "type": "integer"
4858
- }
4859
- }
4860
- }
4861
- },
4862
- "units": {
4863
- "$schema": "http://json-schema.org/draft-07/schema#",
4864
- "title": "basis units enum",
4865
- "enum": [
4866
- "crystal",
4867
- "cartesian"
4868
- ],
4869
- "default": "crystal"
4870
- },
4871
- "labels": {
4872
- "$schema": "http://json-schema.org/draft-07/schema#",
4873
- "title": "atomic labels schema",
4874
- "description": "atomic labels schema",
4875
- "type": "array",
4876
- "items": {
4877
- "$schema": "http://json-schema.org/draft-07/schema#",
4878
- "title": "atomic label schema",
4879
- "description": "Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.",
4880
- "type": "object",
4881
- "required": [
4882
- "id",
4883
- "value"
4884
- ],
4885
- "properties": {
4886
- "value": {
4887
- "anyOf": [
4888
- {
4889
- "type": [
4890
- "integer",
4891
- "string",
4892
- "number"
4893
- ]
4894
- },
4895
- {
4896
- "$schema": "http://json-schema.org/draft-07/schema#",
4897
- "title": "integer positive single digit",
4898
- "type": "integer",
4899
- "minimum": 1,
4900
- "maximum": 9
4901
- }
4902
- ],
4903
- "description": "value of this entry"
4904
- },
4905
- "id": {
4906
- "description": "integer id of this entry",
4907
- "type": "integer"
4908
- }
4909
- }
4910
- }
4911
- }
4912
- }
4913
- },
4914
- "lattice": {
4915
- "$schema": "http://json-schema.org/draft-07/schema#",
4916
- "title": "lattice schema",
4917
- "type": "object",
4918
- "required": [
4919
- "a",
4920
- "b",
4921
- "c",
4922
- "alpha",
4923
- "beta",
4924
- "gamma"
4925
- ],
4926
- "properties": {
4927
- "a": {
4928
- "description": "length of the first lattice vector",
4929
- "type": "number"
4930
- },
4931
- "b": {
4932
- "description": "length of the second lattice vector",
4933
- "type": "number"
4934
- },
4935
- "c": {
4936
- "description": "length of the third lattice vector",
4937
- "type": "number"
4938
- },
4939
- "alpha": {
4940
- "description": "angle between first and second lattice vector",
4941
- "type": "number"
4942
- },
4943
- "beta": {
4944
- "description": "angle between second and third lattice vector",
4945
- "type": "number"
4946
- },
4947
- "gamma": {
4948
- "description": "angle between first and third lattice vector",
4949
- "type": "number"
4950
- },
4951
- "vectors": {
4952
- "$schema": "http://json-schema.org/draft-07/schema#",
4953
- "title": "lattice vectors schema",
4954
- "type": "object",
4955
- "required": [
4956
- "a",
4957
- "b",
4958
- "c"
4959
- ],
4960
- "properties": {
4961
- "a": {
4962
- "$schema": "http://json-schema.org/draft-07/schema#",
4963
- "title": "vector 3d schema",
4964
- "type": "array",
4965
- "minItems": 3,
4966
- "maxItems": 3,
4967
- "items": {
4968
- "type": "number"
4969
- }
4970
- },
4971
- "b": {
4972
- "$schema": "http://json-schema.org/draft-07/schema#",
4973
- "title": "vector 3d schema",
4974
- "type": "array",
4975
- "minItems": 3,
4976
- "maxItems": 3,
4977
- "items": {
4978
- "type": "number"
4979
- }
4980
- },
4981
- "c": {
4982
- "$schema": "http://json-schema.org/draft-07/schema#",
4983
- "title": "vector 3d schema",
4984
- "type": "array",
4985
- "minItems": 3,
4986
- "maxItems": 3,
4987
- "items": {
4988
- "type": "number"
4989
- }
4990
- },
4991
- "alat": {
4992
- "description": "lattice parameter for fractional coordinates",
4993
- "type": "number",
4994
- "default": 1
4995
- },
4996
- "units": {
4997
- "$schema": "http://json-schema.org/draft-07/schema#",
4998
- "title": "lattice vectors units enum",
4999
- "enum": [
5000
- "angstrom",
5001
- "bohr"
5002
- ],
5003
- "default": "angstrom"
5004
- }
5005
- }
5006
- },
5007
- "type": {
5008
- "$schema": "http://json-schema.org/draft-07/schema#",
5009
- "title": "lattice type enum",
5010
- "type": "string",
5011
- "enum": [
5012
- "CUB",
5013
- "BCC",
5014
- "FCC",
5015
- "TET",
5016
- "MCL",
5017
- "ORC",
5018
- "ORCC",
5019
- "ORCF",
5020
- "ORCI",
5021
- "HEX",
5022
- "BCT",
5023
- "TRI",
5024
- "MCLC",
5025
- "RHL"
5026
- ],
5027
- "default": "TRI"
5028
- },
5029
- "units": {
5030
- "$schema": "http://json-schema.org/draft-07/schema#",
5031
- "title": "Lattice units schema",
5032
- "type": "object",
5033
- "default": {
5034
- "length": "angstrom",
5035
- "angle": "degree"
5036
- },
5037
- "properties": {
5038
- "length": {
5039
- "$schema": "http://json-schema.org/draft-07/schema#",
5040
- "title": "lattice units length enum",
5041
- "enum": [
5042
- "angstrom",
5043
- "bohr"
5044
- ],
5045
- "default": "angstrom"
5046
- },
5047
- "angle": {
5048
- "$schema": "http://json-schema.org/draft-07/schema#",
5049
- "title": "lattice units angle enum",
5050
- "enum": [
5051
- "degree",
5052
- "radian"
5053
- ],
5054
- "default": "degree"
5055
- }
5056
- }
5057
- }
5058
- }
5059
- },
5060
- "derivedProperties": {
5061
- "$schema": "http://json-schema.org/draft-07/schema#",
5062
- "title": "derived properties schema",
5063
- "type": "array",
5064
- "items": {
5065
- "oneOf": [
5066
- {
5067
- "$schema": "http://json-schema.org/draft-07/schema#",
5068
- "title": "volume schema",
5069
- "type": "object",
5070
- "required": [
5071
- "value"
5072
- ],
5073
- "properties": {
5074
- "name": {
5075
- "enum": [
5076
- "volume"
5077
- ]
5078
- },
5079
- "units": {
5080
- "enum": [
5081
- "angstrom^3"
5082
- ]
5083
- },
5084
- "value": {
5085
- "type": "number"
5086
- }
5087
- }
5088
- },
5089
- {
5090
- "$schema": "http://json-schema.org/draft-07/schema#",
5091
- "title": "density schema",
5092
- "type": "object",
5093
- "required": [
5094
- "value"
5095
- ],
5096
- "properties": {
5097
- "name": {
5098
- "enum": [
5099
- "density"
5100
- ]
5101
- },
5102
- "units": {
5103
- "enum": [
5104
- "g/cm^3"
5105
- ]
5106
- },
5107
- "value": {
5108
- "type": "number"
5109
- }
5110
- }
5111
- },
5112
- {
5113
- "$schema": "http://json-schema.org/draft-07/schema#",
5114
- "title": "symmetry schema",
5115
- "type": "object",
5116
- "properties": {
5117
- "pointGroupSymbol": {
5118
- "description": "point group symbol in Schoenflies notation",
5119
- "type": "string"
5120
- },
5121
- "spaceGroupSymbol": {
5122
- "description": "space group symbol in Hermann–Mauguin notation",
5123
- "type": "string"
5124
- },
5125
- "tolerance": {
5126
- "type": "object",
5127
- "description": "tolerance used for symmetry calculation",
5128
- "$schema": "http://json-schema.org/draft-07/schema#",
5129
- "title": "scalar schema",
5130
- "required": [
5131
- "value"
5132
- ],
5133
- "properties": {
5134
- "units": {
5135
- "enum": [
5136
- "angstrom"
5137
- ]
5138
- },
5139
- "value": {
5140
- "type": "number"
5141
- }
5142
- }
5143
- },
5144
- "name": {
5145
- "enum": [
5146
- "symmetry"
5147
- ]
5148
- }
5149
- }
5150
- },
5151
- {
5152
- "$schema": "http://json-schema.org/draft-07/schema#",
5153
- "title": "elemental-ratio",
5154
- "description": "ration of this element in the compound",
5155
- "type": "object",
5156
- "required": [
5157
- "value"
5158
- ],
5159
- "properties": {
5160
- "name": {
5161
- "enum": [
5162
- "elemental_ratio"
5163
- ]
5164
- },
5165
- "value": {
5166
- "type": "number",
5167
- "minimum": 0,
5168
- "maximum": 1
5169
- },
5170
- "element": {
5171
- "type": "string",
5172
- "description": "the element this ratio is for"
5173
- }
5174
- }
5175
- },
5176
- {
5177
- "$schema": "http://json-schema.org/draft-07/schema#",
5178
- "title": "p_norm",
5179
- "description": "https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm",
5180
- "type": "object",
5181
- "required": [
5182
- "value"
5183
- ],
5184
- "properties": {
5185
- "name": {
5186
- "enum": [
5187
- "p-norm"
5188
- ]
5189
- },
5190
- "degree": {
5191
- "type": "integer",
5192
- "description": "degree of the dimensionality of the norm"
5193
- },
5194
- "value": {
5195
- "type": "number"
5196
- }
5197
- }
5198
- },
5199
- {
5200
- "$schema": "http://json-schema.org/draft-07/schema#",
5201
- "title": "InChI representation schema",
5202
- "type": "object",
5203
- "required": [
5204
- "value"
5205
- ],
5206
- "properties": {
5207
- "name": {
5208
- "enum": [
5209
- "inchi"
5210
- ]
5211
- },
5212
- "value": {
5213
- "type": "string"
5214
- }
5215
- }
5216
- },
5217
- {
5218
- "$schema": "http://json-schema.org/draft-07/schema#",
5219
- "title": "InChI key representation schema",
5220
- "type": "object",
5221
- "required": [
5222
- "value"
5223
- ],
5224
- "properties": {
5225
- "name": {
5226
- "enum": [
5227
- "inchi_key"
5228
- ]
5229
- },
5230
- "value": {
5231
- "type": "string"
5232
- }
5233
- }
5234
- }
5235
- ],
5236
- "discriminator": {
5237
- "propertyName": "name"
5238
- },
5239
- "required": [
5240
- "name"
5241
- ]
5242
- }
5243
- },
5244
- "external": {
5245
- "$schema": "http://json-schema.org/draft-07/schema#",
5246
- "title": "database source schema",
5247
- "description": "information about a database source",
5248
- "type": "object",
5249
- "required": [
5250
- "id",
5251
- "source",
5252
- "origin"
5253
- ],
5254
- "properties": {
5255
- "id": {
5256
- "description": "ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32",
5257
- "oneOf": [
5258
- {
5259
- "type": "string"
5260
- },
5261
- {
5262
- "type": "number"
5263
- }
5264
- ]
5265
- },
5266
- "source": {
5267
- "description": "Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.",
5268
- "type": "string"
5269
- },
5270
- "origin": {
5271
- "description": "Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).",
5272
- "type": "boolean"
5273
- },
5274
- "data": {
5275
- "description": "Original response from external source.",
5276
- "type": "object"
5277
- },
5278
- "doi": {
5279
- "description": "Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506",
5280
- "type": "string"
5281
- },
5282
- "url": {
5283
- "description": "The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers",
5284
- "type": "string"
5285
- }
5286
- }
5287
- },
5288
- "src": {
5289
- "$schema": "http://json-schema.org/draft-07/schema#",
5290
- "title": "file source schema",
5291
- "description": "file source with the information inside",
5292
- "type": "object",
5293
- "required": [
5294
- "filename",
5295
- "text",
5296
- "hash"
5297
- ],
5298
- "properties": {
5299
- "extension": {
5300
- "description": "file extension",
5301
- "type": "string"
5302
- },
5303
- "filename": {
5304
- "description": "file name without extension",
5305
- "type": "string"
5306
- },
5307
- "text": {
5308
- "description": "file content as raw text",
5309
- "type": "string"
5310
- },
5311
- "hash": {
5312
- "description": "MD5 hash based on file content",
5313
- "type": "string"
5314
- }
5315
- }
5316
- },
5317
- "scaledHash": {
5318
- "description": "Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).",
5319
- "type": "string"
5320
- },
5321
- "icsdId": {
5322
- "description": "Corresponding ICSD id of the material",
5323
- "type": "integer"
5324
- },
5325
- "isNonPeriodic": {
5326
- "description": "Whether to work in the finite molecular picture (usually with atomic orbital basis)",
5327
- "type": "boolean"
5328
- },
5329
- "consistencyChecks": {
5330
- "type": "array",
5331
- "items": {
5332
- "$schema": "http://json-schema.org/draft-07/schema#",
5333
- "title": "material consistency check schema",
5334
- "type": "object",
5335
- "description": "The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.",
5336
- "required": [
5337
- "key",
5338
- "name",
5339
- "severity",
5340
- "message"
5341
- ],
5342
- "properties": {
5343
- "name": {
5344
- "type": "string",
5345
- "enum": [
5346
- "default",
5347
- "atomsTooClose",
5348
- "atomsOverlap"
5349
- ],
5350
- "description": "Name of the consistency check that is performed, which is listed in an enum."
5351
- },
5352
- "key": {
5353
- "type": "string",
5354
- "description": "Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"
5355
- },
5356
- "severity": {
5357
- "enum": [
5358
- "info",
5359
- "warning",
5360
- "error"
5361
- ],
5362
- "description": "Severity level of the problem, which is used in UI to differentiate."
5363
- },
5364
- "message": {
5365
- "type": "string",
5366
- "description": "Message generated by the consistency check describing the problem."
5367
- }
5368
- }
5369
- }
5370
- },
5371
- "_id": {
5372
- "description": "entity identity",
5373
- "type": "string"
5374
- },
5375
- "slug": {
5376
- "description": "entity slug",
5377
- "type": "string"
5378
- },
5379
- "systemName": {
5380
- "type": "string"
5381
- },
5382
- "schemaVersion": {
5383
- "description": "entity's schema version. Used to distinct between different schemas.",
5384
- "type": "string",
5385
- "default": "2022.8.16"
5386
- },
5387
- "name": {
5388
- "description": "entity name",
5389
- "type": "string"
5390
- },
5391
- "isDefault": {
5392
- "description": "Identifies that entity is defaultable",
5393
- "type": "boolean",
5394
- "default": false
5395
- },
5396
- "metadata": {
5397
- "type": "object"
5398
- }
5399
- }
5400
- }
1793
+ },
1794
+ "gaps": {
1795
+ "description": "Gap distances between stack components as an array of objects with id and value",
1796
+ "type": "array",
1797
+ "items": {
1798
+ "$schema": "http://json-schema.org/draft-07/schema#",
1799
+ "title": "object with id",
1800
+ "description": "object containing integer id",
1801
+ "type": "object",
1802
+ "required": [
1803
+ "id"
1804
+ ],
1805
+ "properties": {
1806
+ "value": {
1807
+ "type": "number",
1808
+ "minimum": 0
1809
+ },
1810
+ "id": {
1811
+ "description": "integer id of this entry",
1812
+ "type": "integer"
5401
1813
  }
5402
1814
  }
5403
- ]
5404
- },
5405
- "direction": {
5406
- "default": "z",
5407
- "$schema": "http://json-schema.org/draft-07/schema#",
5408
- "title": "Axis Enum",
5409
- "type": "string",
5410
- "description": "Enum for axis types",
5411
- "enum": [
5412
- "x",
5413
- "y",
5414
- "z"
5415
- ]
1815
+ }
5416
1816
  }
5417
1817
  }
5418
- }
5419
- ]
5420
- },
5421
- {
5422
- "anyOf": [
1818
+ },
5423
1819
  {
5424
1820
  "$schema": "http://json-schema.org/draft-07/schema#",
5425
- "title": "Slab Configuration Schema",
5426
- "description": "A slab unit cell consisting of repeated unique atomic layers and vacuum.",
5427
- "type": "object",
1821
+ "title": "Slab Strained Supercell Configuration Schema",
1822
+ "description": "A slab structure configuration with supercell transformation and strain matrix in the xy plane",
5428
1823
  "required": [
1824
+ "direction",
5429
1825
  "stack_components",
5430
- "direction"
1826
+ "strain_matrix",
1827
+ "xy_supercell_matrix"
5431
1828
  ],
1829
+ "type": "object",
5432
1830
  "properties": {
1831
+ "xy_supercell_matrix": {
1832
+ "$schema": "http://json-schema.org/draft-07/schema#",
1833
+ "title": "Supercell Matrix 2D Schema",
1834
+ "description": "Supercell matrix for xy plane transformations",
1835
+ "type": "array",
1836
+ "minItems": 2,
1837
+ "maxItems": 2,
1838
+ "default": [
1839
+ [
1840
+ 1,
1841
+ 0
1842
+ ],
1843
+ [
1844
+ 0,
1845
+ 1
1846
+ ]
1847
+ ],
1848
+ "items": {
1849
+ "type": "array",
1850
+ "minItems": 2,
1851
+ "maxItems": 2,
1852
+ "items": {
1853
+ "type": "integer"
1854
+ }
1855
+ }
1856
+ },
1857
+ "strain_matrix": {
1858
+ "$schema": "http://json-schema.org/draft-07/schema#",
1859
+ "title": "matrix 3x3 schema",
1860
+ "type": "array",
1861
+ "minItems": 3,
1862
+ "maxItems": 3,
1863
+ "items": {
1864
+ "$schema": "http://json-schema.org/draft-07/schema#",
1865
+ "title": "array of 3 number elements schema",
1866
+ "type": "array",
1867
+ "minItems": 3,
1868
+ "maxItems": 3,
1869
+ "items": {
1870
+ "type": "number"
1871
+ }
1872
+ }
1873
+ },
5433
1874
  "stack_components": {
5434
1875
  "type": "array",
5435
1876
  "minItems": 2,
@@ -7181,64 +3622,46 @@
7181
3622
  "y",
7182
3623
  "z"
7183
3624
  ]
3625
+ },
3626
+ "gaps": {
3627
+ "description": "Gap distances between stack components as an array of objects with id and value",
3628
+ "type": "array",
3629
+ "items": {
3630
+ "$schema": "http://json-schema.org/draft-07/schema#",
3631
+ "title": "object with id",
3632
+ "description": "object containing integer id",
3633
+ "type": "object",
3634
+ "required": [
3635
+ "id"
3636
+ ],
3637
+ "properties": {
3638
+ "value": {
3639
+ "type": "number",
3640
+ "minimum": 0
3641
+ },
3642
+ "id": {
3643
+ "description": "integer id of this entry",
3644
+ "type": "integer"
3645
+ }
3646
+ }
3647
+ }
7184
3648
  }
7185
3649
  }
7186
- },
3650
+ }
3651
+ ]
3652
+ },
3653
+ {
3654
+ "anyOf": [
7187
3655
  {
7188
3656
  "$schema": "http://json-schema.org/draft-07/schema#",
7189
- "title": "Slab Strained Supercell Configuration Schema",
7190
- "description": "A slab structure configuration with supercell transformation and strain matrix in the xy plane",
3657
+ "title": "Slab Configuration Schema",
3658
+ "description": "A slab unit cell consisting of repeated unique atomic layers and vacuum.",
3659
+ "type": "object",
7191
3660
  "required": [
7192
- "direction",
7193
3661
  "stack_components",
7194
- "strain_matrix",
7195
- "xy_supercell_matrix"
3662
+ "direction"
7196
3663
  ],
7197
- "type": "object",
7198
3664
  "properties": {
7199
- "xy_supercell_matrix": {
7200
- "$schema": "http://json-schema.org/draft-07/schema#",
7201
- "title": "Supercell Matrix 2D Schema",
7202
- "description": "Supercell matrix for xy plane transformations",
7203
- "type": "array",
7204
- "minItems": 2,
7205
- "maxItems": 2,
7206
- "default": [
7207
- [
7208
- 1,
7209
- 0
7210
- ],
7211
- [
7212
- 0,
7213
- 1
7214
- ]
7215
- ],
7216
- "items": {
7217
- "type": "array",
7218
- "minItems": 2,
7219
- "maxItems": 2,
7220
- "items": {
7221
- "type": "integer"
7222
- }
7223
- }
7224
- },
7225
- "strain_matrix": {
7226
- "$schema": "http://json-schema.org/draft-07/schema#",
7227
- "title": "matrix 3x3 schema",
7228
- "type": "array",
7229
- "minItems": 3,
7230
- "maxItems": 3,
7231
- "items": {
7232
- "$schema": "http://json-schema.org/draft-07/schema#",
7233
- "title": "array of 3 number elements schema",
7234
- "type": "array",
7235
- "minItems": 3,
7236
- "maxItems": 3,
7237
- "items": {
7238
- "type": "number"
7239
- }
7240
- }
7241
- },
7242
3665
  "stack_components": {
7243
3666
  "type": "array",
7244
3667
  "minItems": 2,
@@ -8990,13 +5413,36 @@
8990
5413
  "y",
8991
5414
  "z"
8992
5415
  ]
5416
+ },
5417
+ "gaps": {
5418
+ "description": "Gap distances between stack components as an array of objects with id and value",
5419
+ "type": "array",
5420
+ "items": {
5421
+ "$schema": "http://json-schema.org/draft-07/schema#",
5422
+ "title": "object with id",
5423
+ "description": "object containing integer id",
5424
+ "type": "object",
5425
+ "required": [
5426
+ "id"
5427
+ ],
5428
+ "properties": {
5429
+ "value": {
5430
+ "type": "number",
5431
+ "minimum": 0
5432
+ },
5433
+ "id": {
5434
+ "description": "integer id of this entry",
5435
+ "type": "integer"
5436
+ }
5437
+ }
5438
+ }
8993
5439
  }
8994
5440
  }
8995
5441
  },
8996
5442
  {
8997
5443
  "$schema": "http://json-schema.org/draft-07/schema#",
8998
- "title": "Slab Strained Supercell with Gap Configuration Schema",
8999
- "description": "A slab structure configuration with supercell transformation, strain matrix, and optional gap for film positioning",
5444
+ "title": "Slab Strained Supercell Configuration Schema",
5445
+ "description": "A slab structure configuration with supercell transformation and strain matrix in the xy plane",
9000
5446
  "required": [
9001
5447
  "direction",
9002
5448
  "stack_components",
@@ -9005,11 +5451,6 @@
9005
5451
  ],
9006
5452
  "type": "object",
9007
5453
  "properties": {
9008
- "gap": {
9009
- "type": "number",
9010
- "description": "If provided, the film is shifted to have it as smallest distance to the substrate",
9011
- "minimum": 0
9012
- },
9013
5454
  "xy_supercell_matrix": {
9014
5455
  "$schema": "http://json-schema.org/draft-07/schema#",
9015
5456
  "title": "Supercell Matrix 2D Schema",
@@ -10804,6 +7245,29 @@
10804
7245
  "y",
10805
7246
  "z"
10806
7247
  ]
7248
+ },
7249
+ "gaps": {
7250
+ "description": "Gap distances between stack components as an array of objects with id and value",
7251
+ "type": "array",
7252
+ "items": {
7253
+ "$schema": "http://json-schema.org/draft-07/schema#",
7254
+ "title": "object with id",
7255
+ "description": "object containing integer id",
7256
+ "type": "object",
7257
+ "required": [
7258
+ "id"
7259
+ ],
7260
+ "properties": {
7261
+ "value": {
7262
+ "type": "number",
7263
+ "minimum": 0
7264
+ },
7265
+ "id": {
7266
+ "description": "integer id of this entry",
7267
+ "type": "integer"
7268
+ }
7269
+ }
7270
+ }
10807
7271
  }
10808
7272
  }
10809
7273
  }
@@ -11611,6 +8075,29 @@
11611
8075
  "items": {
11612
8076
  "type": "number"
11613
8077
  }
8078
+ },
8079
+ "gaps": {
8080
+ "description": "Gap distances between stack components as an array of objects with id and value",
8081
+ "type": "array",
8082
+ "items": {
8083
+ "$schema": "http://json-schema.org/draft-07/schema#",
8084
+ "title": "object with id",
8085
+ "description": "object containing integer id",
8086
+ "type": "object",
8087
+ "required": [
8088
+ "id"
8089
+ ],
8090
+ "properties": {
8091
+ "value": {
8092
+ "type": "number",
8093
+ "minimum": 0
8094
+ },
8095
+ "id": {
8096
+ "description": "integer id of this entry",
8097
+ "type": "integer"
8098
+ }
8099
+ }
8100
+ }
11614
8101
  }
11615
8102
  }
11616
8103
  }