@mat3ra/esse 2025.7.1-0 → 2025.7.29-0

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 (143) hide show
  1. package/README.md +4 -4
  2. package/dist/js/example/core/abstract/vector_2d.json +4 -0
  3. package/dist/js/example/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +693 -0
  4. package/dist/js/example/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +566 -0
  5. package/dist/js/example/materials_category/defective_structures/two_dimensional/adatom/configuration.json +553 -0
  6. package/dist/js/example/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +693 -0
  7. package/dist/js/example/materials_category/defective_structures/two_dimensional/island/configuration.json +841 -0
  8. package/dist/js/example/materials_category/defective_structures/two_dimensional/terrace/configuration.json +846 -0
  9. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.json +271 -0
  10. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.json +271 -0
  11. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.json +271 -0
  12. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.json +136 -0
  13. package/dist/js/example/materials_category/pristine_structures/two_dimensional/nanoribbon.json +419 -0
  14. package/dist/js/example/materials_category/pristine_structures/two_dimensional/nanotape.json +282 -0
  15. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab.json +1 -11
  16. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +305 -0
  17. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.json +306 -0
  18. package/dist/js/example/materials_category/processed_structures/two_dimensional/passivation/configuration.json +551 -0
  19. package/dist/js/example/materials_category_components/entities/auxiliary/one_dimensional/miller_indices_2d.json +4 -0
  20. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +128 -0
  21. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.json +138 -0
  22. package/dist/js/example/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.json +135 -0
  23. package/dist/js/example/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.json +145 -0
  24. package/dist/js/example/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +547 -0
  25. package/dist/js/example/materials_category_components/operations/core/combinations/merge.json +1 -1
  26. package/dist/js/example/materials_category_components/operations/core/modifications/perturb.json +131 -0
  27. package/dist/js/schema/core/abstract/vector_2d.json +11 -0
  28. package/dist/js/schema/core/primitive/array_of_2_numbers.json +11 -0
  29. package/dist/js/schema/job.json +14 -0
  30. package/dist/js/schema/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +11616 -0
  31. package/dist/js/schema/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +11622 -0
  32. package/dist/js/schema/materials_category/defective_structures/two_dimensional/adatom/configuration.json +3517 -0
  33. package/dist/js/schema/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +11616 -0
  34. package/dist/js/schema/materials_category/defective_structures/two_dimensional/island/configuration.json +5197 -0
  35. package/dist/js/schema/materials_category/defective_structures/two_dimensional/terrace/configuration.json +5214 -0
  36. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.json +787 -0
  37. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.json +1722 -0
  38. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.json +1722 -0
  39. package/dist/js/schema/{materials_category_components/operations/core/combinations/stack_component.json → materials_category/defective_structures/zero_dimensional/point_defect/vacancy.json} +46 -790
  40. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanoribbon.json +2734 -0
  41. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanotape.json +1917 -0
  42. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab.json +1595 -1622
  43. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +1810 -0
  44. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.json +1815 -0
  45. package/dist/js/schema/{materials_category_components/entities/reusable/two_dimensional/slab_unit_cell.json → materials_category/processed_structures/two_dimensional/passivation/configuration.json} +1003 -907
  46. package/dist/js/schema/materials_category_components/entities/auxiliary/one_dimensional/miller_indices_2d.json +12 -0
  47. package/dist/js/schema/materials_category_components/entities/auxiliary/two_dimensional/termination.json +1 -0
  48. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +757 -0
  49. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.json +936 -0
  50. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/void_region.json +821 -0
  51. package/dist/js/schema/materials_category_components/entities/core/zero_dimensional/vacancy.json +20 -0
  52. package/dist/js/schema/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.json +785 -0
  53. package/dist/js/schema/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.json +1100 -0
  54. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.json +773 -0
  55. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers.json +18 -18
  56. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.json +18 -18
  57. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.json +18 -18
  58. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.json +17 -18
  59. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +2585 -0
  60. package/dist/js/schema/materials_category_components/operations/core/combinations/enums.json +12 -0
  61. package/dist/js/schema/materials_category_components/operations/core/combinations/merge.json +12 -1627
  62. package/dist/js/schema/materials_category_components/operations/core/combinations/stack.json +3 -1551
  63. package/dist/js/schema/materials_category_components/operations/core/modifications/perturb.json +768 -0
  64. package/dist/js/schema/software/flavor.json +7 -0
  65. package/dist/js/schema/software_directory/ml/unit/execution/evaluate/cross_validate.json +7 -0
  66. package/dist/js/schema/software_directory/ml/unit/execution/initialize.json +7 -0
  67. package/dist/js/schema/software_directory/ml/unit/execution/score.json +7 -0
  68. package/dist/js/schema/software_directory/ml/unit/execution/train.json +7 -0
  69. package/dist/js/schema/software_directory/ml/unit/execution.json +28 -0
  70. package/dist/js/schema/software_directory/modeling/unit/execution.json +7 -0
  71. package/dist/js/schema/software_directory/scripting/unit/execution.json +7 -0
  72. package/dist/js/schema/workflow/subworkflow/unit.json +7 -0
  73. package/dist/js/schema/workflow/subworkflow.json +7 -0
  74. package/dist/js/schema/workflow/unit/execution.json +7 -0
  75. package/dist/js/schema/workflow/unit.json +7 -0
  76. package/dist/js/schema/workflow.json +14 -0
  77. package/dist/js/schemas.json +1 -1
  78. package/dist/js/types.d.ts +31925 -4987
  79. package/example/core/abstract/vector_2d.json +4 -0
  80. package/example/materials_category/compound_pristine_structures/two-dimensional/interface/configuration.json +18 -0
  81. package/example/materials_category/defective_structures/one-dimensional/grain_boundary_linear/configuration.json +16 -0
  82. package/example/materials_category/defective_structures/two-dimensional/adatom/configuration.json +24 -0
  83. package/example/materials_category/defective_structures/two-dimensional/grain_boundary_planar/configuration.json +18 -0
  84. package/example/materials_category/defective_structures/two-dimensional/island/configuration.json +37 -0
  85. package/example/materials_category/defective_structures/two-dimensional/terrace/configuration.json +42 -0
  86. package/example/materials_category/defective_structures/zero-dimensional/point_defect/base_configuration.json +19 -0
  87. package/example/materials_category/defective_structures/zero-dimensional/point_defect/interstitial.json +21 -0
  88. package/example/materials_category/defective_structures/zero-dimensional/point_defect/substitutional.json +21 -0
  89. package/example/materials_category/defective_structures/zero-dimensional/point_defect/vacancy.json +11 -0
  90. package/example/materials_category/pristine_structures/two-dimensional/nanoribbon.json +42 -0
  91. package/example/materials_category/pristine_structures/two-dimensional/nanotape.json +30 -0
  92. package/example/materials_category/pristine_structures/two-dimensional/slab.json +1 -11
  93. package/example/materials_category/pristine_structures/two-dimensional/slab_strained_supercell.json +55 -0
  94. package/example/materials_category/pristine_structures/two-dimensional/slab_strained_supercell_with_gap.json +56 -0
  95. package/example/materials_category/processed_structures/two-dimensional/passivation/configuration.json +45 -0
  96. package/example/materials_category_components/entities/auxiliary/one-dimensional/miller_indices_2d.json +2 -0
  97. package/example/materials_category_components/entities/auxiliary/zero-dimensional/crystal_site.json +7 -2
  98. package/example/materials_category_components/entities/auxiliary/zero-dimensional/point_defect_site.json +11 -0
  99. package/example/materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines.json +8 -0
  100. package/example/materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines_unique_repeated.json +18 -0
  101. package/example/materials_category_components/entities/reusable/two-dimensional/slab_stack_configuration.json +22 -0
  102. package/example/materials_category_components/operations/core/combinations/merge.json +2 -2
  103. package/example/materials_category_components/operations/core/modifications/perturb.json +6 -0
  104. package/package.json +1 -1
  105. package/schema/core/abstract/vector_2d.json +10 -0
  106. package/schema/core/primitive/array_of_2_numbers.json +11 -0
  107. package/schema/materials_category/compound_pristine_structures/two-dimensional/interface/configuration.json +65 -0
  108. package/schema/materials_category/defective_structures/one-dimensional/grain_boundary_linear/configuration.json +34 -0
  109. package/schema/materials_category/defective_structures/two-dimensional/adatom/configuration.json +26 -0
  110. package/schema/materials_category/defective_structures/two-dimensional/grain_boundary_planar/configuration.json +16 -0
  111. package/schema/materials_category/defective_structures/two-dimensional/island/configuration.json +48 -0
  112. package/schema/materials_category/defective_structures/two-dimensional/terrace/configuration.json +55 -0
  113. package/schema/materials_category/defective_structures/zero-dimensional/point_defect/base_configuration.json +30 -0
  114. package/schema/materials_category/defective_structures/zero-dimensional/point_defect/interstitial.json +23 -0
  115. package/schema/materials_category/defective_structures/zero-dimensional/point_defect/substitutional.json +23 -0
  116. package/schema/materials_category/defective_structures/zero-dimensional/point_defect/vacancy.json +23 -0
  117. package/schema/materials_category/manifest.yaml +53 -156
  118. package/schema/materials_category/pristine_structures/two-dimensional/nanoribbon.json +29 -0
  119. package/schema/materials_category/pristine_structures/two-dimensional/nanotape.json +29 -0
  120. package/schema/materials_category/pristine_structures/two-dimensional/slab.json +18 -6
  121. package/schema/materials_category/pristine_structures/two-dimensional/slab_strained_supercell.json +25 -0
  122. package/schema/materials_category/pristine_structures/two-dimensional/slab_strained_supercell_with_gap.json +18 -0
  123. package/schema/materials_category/processed_structures/two-dimensional/passivation/configuration.json +45 -0
  124. package/schema/materials_category_components/entities/auxiliary/one-dimensional/miller_indices_2d.json +13 -0
  125. package/schema/materials_category_components/entities/auxiliary/two-dimensional/termination.json +1 -0
  126. package/schema/materials_category_components/entities/auxiliary/zero-dimensional/crystal_site.json +4 -0
  127. package/schema/materials_category_components/entities/auxiliary/zero-dimensional/point_defect_site.json +30 -0
  128. package/schema/materials_category_components/entities/auxiliary/zero-dimensional/void_region.json +18 -0
  129. package/schema/materials_category_components/entities/core/zero-dimensional/vacancy.json +20 -0
  130. package/schema/materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines.json +20 -0
  131. package/schema/materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines_unique_repeated.json +37 -0
  132. package/schema/materials_category_components/entities/reusable/three-dimensional/crystal_lattice_base.json +20 -0
  133. package/schema/materials_category_components/entities/reusable/two-dimensional/crystal_lattice_planes.json +6 -11
  134. package/schema/materials_category_components/entities/reusable/two-dimensional/slab_stack_configuration.json +32 -0
  135. package/schema/materials_category_components/operations/core/combinations/enums.json +12 -0
  136. package/schema/materials_category_components/operations/core/combinations/merge.json +9 -23
  137. package/schema/materials_category_components/operations/core/combinations/stack.json +3 -5
  138. package/schema/materials_category_components/operations/core/modifications/perturb.json +16 -0
  139. package/schema/software/flavor.json +7 -0
  140. package/dist/js/example/materials_category_components/operations/core/combinations/stack_component.json +0 -128
  141. package/example/materials_category_components/operations/core/combinations/stack_component.json +0 -3
  142. package/schema/materials_category_components/entities/reusable/two-dimensional/slab_unit_cell.json +0 -33
  143. package/schema/materials_category_components/operations/core/combinations/stack_component.json +0 -14
@@ -0,0 +1,1100 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/one-dimensional/crystal-lattice-lines-unique-repeated",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Crystal Lattice Lines Unique Repeated Schema",
5
+ "description": "Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations",
6
+ "type": "object",
7
+ "required": [
8
+ "crystal",
9
+ "miller_indices_2d",
10
+ "termination_top"
11
+ ],
12
+ "properties": {
13
+ "termination_top": {
14
+ "$schema": "http://json-schema.org/draft-07/schema#",
15
+ "title": "Termination Schema",
16
+ "description": "Defines a specific termination of a slab",
17
+ "type": "object",
18
+ "required": [
19
+ "chemical_elements",
20
+ "space_group_symmetry_label"
21
+ ],
22
+ "properties": {
23
+ "chemical_elements": {
24
+ "title": "Chemical Elements",
25
+ "description": "Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')",
26
+ "type": "string",
27
+ "anyOf": [
28
+ {
29
+ "enum": [
30
+ "H",
31
+ "He",
32
+ "Li",
33
+ "Be",
34
+ "B",
35
+ "C",
36
+ "N",
37
+ "O",
38
+ "F",
39
+ "Ne",
40
+ "Na",
41
+ "Mg",
42
+ "Al",
43
+ "Si",
44
+ "P",
45
+ "S",
46
+ "Cl",
47
+ "Ar",
48
+ "K",
49
+ "Ca",
50
+ "Sc",
51
+ "Ti",
52
+ "V",
53
+ "Cr",
54
+ "Mn",
55
+ "Fe",
56
+ "Co",
57
+ "Ni",
58
+ "Cu",
59
+ "Zn",
60
+ "Ga",
61
+ "Ge",
62
+ "As",
63
+ "Se",
64
+ "Br",
65
+ "Kr",
66
+ "Rb",
67
+ "Sr",
68
+ "Y",
69
+ "Zr",
70
+ "Nb",
71
+ "Mo",
72
+ "Tc",
73
+ "Ru",
74
+ "Rh",
75
+ "Pd",
76
+ "Ag",
77
+ "Cd",
78
+ "In",
79
+ "Sn",
80
+ "Sb",
81
+ "Te",
82
+ "I",
83
+ "Xe",
84
+ "Cs",
85
+ "Ba",
86
+ "La",
87
+ "Ce",
88
+ "Pr",
89
+ "Nd",
90
+ "Pm",
91
+ "Sm",
92
+ "Eu",
93
+ "Gd",
94
+ "Tb",
95
+ "Dy",
96
+ "Ho",
97
+ "Er",
98
+ "Tm",
99
+ "Yb",
100
+ "Lu",
101
+ "Hf",
102
+ "Ta",
103
+ "W",
104
+ "Re",
105
+ "Os",
106
+ "Ir",
107
+ "Pt",
108
+ "Au",
109
+ "Hg",
110
+ "Tl",
111
+ "Pb",
112
+ "Bi",
113
+ "Po",
114
+ "At",
115
+ "Rn",
116
+ "Fr",
117
+ "Ra",
118
+ "Ac",
119
+ "Th",
120
+ "Pa",
121
+ "U",
122
+ "Np",
123
+ "Pu",
124
+ "Am",
125
+ "Cm",
126
+ "Bk",
127
+ "Cf",
128
+ "Es",
129
+ "Fm",
130
+ "Md",
131
+ "No",
132
+ "Lr",
133
+ "Rf",
134
+ "Db",
135
+ "Sg",
136
+ "Bh",
137
+ "Hs",
138
+ "Mt",
139
+ "Ds",
140
+ "Rg",
141
+ "Cn",
142
+ "Nh",
143
+ "Fl",
144
+ "Mc",
145
+ "Lv",
146
+ "Ts",
147
+ "Og"
148
+ ]
149
+ },
150
+ {
151
+ "type": "string",
152
+ "description": "A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'",
153
+ "pattern": "^([A-Z][a-z]?[0-9]*)+$"
154
+ }
155
+ ]
156
+ },
157
+ "space_group_symmetry_label": {
158
+ "title": "Space Group Symmetry Label",
159
+ "description": "Space group symmetry designation for the termination",
160
+ "type": "string"
161
+ }
162
+ }
163
+ },
164
+ "termination_bottom": {
165
+ "$schema": "http://json-schema.org/draft-07/schema#",
166
+ "title": "Termination Schema",
167
+ "description": "Defines a specific termination of a slab",
168
+ "type": "object",
169
+ "required": [
170
+ "chemical_elements",
171
+ "space_group_symmetry_label"
172
+ ],
173
+ "properties": {
174
+ "chemical_elements": {
175
+ "title": "Chemical Elements",
176
+ "description": "Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')",
177
+ "type": "string",
178
+ "anyOf": [
179
+ {
180
+ "enum": [
181
+ "H",
182
+ "He",
183
+ "Li",
184
+ "Be",
185
+ "B",
186
+ "C",
187
+ "N",
188
+ "O",
189
+ "F",
190
+ "Ne",
191
+ "Na",
192
+ "Mg",
193
+ "Al",
194
+ "Si",
195
+ "P",
196
+ "S",
197
+ "Cl",
198
+ "Ar",
199
+ "K",
200
+ "Ca",
201
+ "Sc",
202
+ "Ti",
203
+ "V",
204
+ "Cr",
205
+ "Mn",
206
+ "Fe",
207
+ "Co",
208
+ "Ni",
209
+ "Cu",
210
+ "Zn",
211
+ "Ga",
212
+ "Ge",
213
+ "As",
214
+ "Se",
215
+ "Br",
216
+ "Kr",
217
+ "Rb",
218
+ "Sr",
219
+ "Y",
220
+ "Zr",
221
+ "Nb",
222
+ "Mo",
223
+ "Tc",
224
+ "Ru",
225
+ "Rh",
226
+ "Pd",
227
+ "Ag",
228
+ "Cd",
229
+ "In",
230
+ "Sn",
231
+ "Sb",
232
+ "Te",
233
+ "I",
234
+ "Xe",
235
+ "Cs",
236
+ "Ba",
237
+ "La",
238
+ "Ce",
239
+ "Pr",
240
+ "Nd",
241
+ "Pm",
242
+ "Sm",
243
+ "Eu",
244
+ "Gd",
245
+ "Tb",
246
+ "Dy",
247
+ "Ho",
248
+ "Er",
249
+ "Tm",
250
+ "Yb",
251
+ "Lu",
252
+ "Hf",
253
+ "Ta",
254
+ "W",
255
+ "Re",
256
+ "Os",
257
+ "Ir",
258
+ "Pt",
259
+ "Au",
260
+ "Hg",
261
+ "Tl",
262
+ "Pb",
263
+ "Bi",
264
+ "Po",
265
+ "At",
266
+ "Rn",
267
+ "Fr",
268
+ "Ra",
269
+ "Ac",
270
+ "Th",
271
+ "Pa",
272
+ "U",
273
+ "Np",
274
+ "Pu",
275
+ "Am",
276
+ "Cm",
277
+ "Bk",
278
+ "Cf",
279
+ "Es",
280
+ "Fm",
281
+ "Md",
282
+ "No",
283
+ "Lr",
284
+ "Rf",
285
+ "Db",
286
+ "Sg",
287
+ "Bh",
288
+ "Hs",
289
+ "Mt",
290
+ "Ds",
291
+ "Rg",
292
+ "Cn",
293
+ "Nh",
294
+ "Fl",
295
+ "Mc",
296
+ "Lv",
297
+ "Ts",
298
+ "Og"
299
+ ]
300
+ },
301
+ {
302
+ "type": "string",
303
+ "description": "A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'",
304
+ "pattern": "^([A-Z][a-z]?[0-9]*)+$"
305
+ }
306
+ ]
307
+ },
308
+ "space_group_symmetry_label": {
309
+ "title": "Space Group Symmetry Label",
310
+ "description": "Space group symmetry designation for the termination",
311
+ "type": "string"
312
+ }
313
+ }
314
+ },
315
+ "number_of_repetitions_width": {
316
+ "type": "integer",
317
+ "minimum": 1,
318
+ "default": 1,
319
+ "description": "Number of repetitions in width direction"
320
+ },
321
+ "number_of_repetitions_length": {
322
+ "type": "integer",
323
+ "minimum": 1,
324
+ "default": 1,
325
+ "description": "Number of repetitions in length direction"
326
+ },
327
+ "miller_indices_2d": {
328
+ "$schema": "http://json-schema.org/draft-07/schema#",
329
+ "title": "2D Miller Indices Schema",
330
+ "description": "The (u,v) Miller indices for the line direction",
331
+ "type": "array",
332
+ "minItems": 2,
333
+ "maxItems": 2,
334
+ "items": {
335
+ "type": "integer"
336
+ }
337
+ },
338
+ "crystal": {
339
+ "$schema": "http://json-schema.org/draft-07/schema#",
340
+ "title": "Crystal Schema",
341
+ "description": "A crystal structure, referencing the base material schema",
342
+ "type": "object",
343
+ "required": [
344
+ "basis",
345
+ "lattice"
346
+ ],
347
+ "properties": {
348
+ "formula": {
349
+ "description": "reduced chemical formula",
350
+ "type": "string"
351
+ },
352
+ "unitCellFormula": {
353
+ "description": "chemical formula based on the number of atoms of each element in the supercell",
354
+ "type": "string"
355
+ },
356
+ "basis": {
357
+ "$schema": "http://json-schema.org/draft-07/schema#",
358
+ "title": "basis schema",
359
+ "type": "object",
360
+ "required": [
361
+ "elements",
362
+ "coordinates"
363
+ ],
364
+ "properties": {
365
+ "elements": {
366
+ "$schema": "http://json-schema.org/draft-07/schema#",
367
+ "title": "atomic elements schema",
368
+ "description": "atomic elements schema",
369
+ "type": "array",
370
+ "items": {
371
+ "$schema": "http://json-schema.org/draft-07/schema#",
372
+ "title": "atomic element schema",
373
+ "description": "chemical element of an atom according to the periodic table",
374
+ "type": "object",
375
+ "required": [
376
+ "id",
377
+ "value"
378
+ ],
379
+ "properties": {
380
+ "value": {
381
+ "description": "All elements, including extra elements",
382
+ "anyOf": [
383
+ {
384
+ "enum": [
385
+ "H",
386
+ "He",
387
+ "Li",
388
+ "Be",
389
+ "B",
390
+ "C",
391
+ "N",
392
+ "O",
393
+ "F",
394
+ "Ne",
395
+ "Na",
396
+ "Mg",
397
+ "Al",
398
+ "Si",
399
+ "P",
400
+ "S",
401
+ "Cl",
402
+ "Ar",
403
+ "K",
404
+ "Ca",
405
+ "Sc",
406
+ "Ti",
407
+ "V",
408
+ "Cr",
409
+ "Mn",
410
+ "Fe",
411
+ "Co",
412
+ "Ni",
413
+ "Cu",
414
+ "Zn",
415
+ "Ga",
416
+ "Ge",
417
+ "As",
418
+ "Se",
419
+ "Br",
420
+ "Kr",
421
+ "Rb",
422
+ "Sr",
423
+ "Y",
424
+ "Zr",
425
+ "Nb",
426
+ "Mo",
427
+ "Tc",
428
+ "Ru",
429
+ "Rh",
430
+ "Pd",
431
+ "Ag",
432
+ "Cd",
433
+ "In",
434
+ "Sn",
435
+ "Sb",
436
+ "Te",
437
+ "I",
438
+ "Xe",
439
+ "Cs",
440
+ "Ba",
441
+ "La",
442
+ "Ce",
443
+ "Pr",
444
+ "Nd",
445
+ "Pm",
446
+ "Sm",
447
+ "Eu",
448
+ "Gd",
449
+ "Tb",
450
+ "Dy",
451
+ "Ho",
452
+ "Er",
453
+ "Tm",
454
+ "Yb",
455
+ "Lu",
456
+ "Hf",
457
+ "Ta",
458
+ "W",
459
+ "Re",
460
+ "Os",
461
+ "Ir",
462
+ "Pt",
463
+ "Au",
464
+ "Hg",
465
+ "Tl",
466
+ "Pb",
467
+ "Bi",
468
+ "Po",
469
+ "At",
470
+ "Rn",
471
+ "Fr",
472
+ "Ra",
473
+ "Ac",
474
+ "Th",
475
+ "Pa",
476
+ "U",
477
+ "Np",
478
+ "Pu",
479
+ "Am",
480
+ "Cm",
481
+ "Bk",
482
+ "Cf",
483
+ "Es",
484
+ "Fm",
485
+ "Md",
486
+ "No",
487
+ "Lr",
488
+ "Rf",
489
+ "Db",
490
+ "Sg",
491
+ "Bh",
492
+ "Hs",
493
+ "Mt",
494
+ "Ds",
495
+ "Rg",
496
+ "Cn",
497
+ "Nh",
498
+ "Fl",
499
+ "Mc",
500
+ "Lv",
501
+ "Ts",
502
+ "Og"
503
+ ]
504
+ },
505
+ {
506
+ "description": "Extra elements, used for convenience purposed",
507
+ "enum": [
508
+ "X",
509
+ "Vac"
510
+ ]
511
+ }
512
+ ],
513
+ "type": "string"
514
+ },
515
+ "id": {
516
+ "description": "integer id of this entry",
517
+ "type": "integer"
518
+ }
519
+ }
520
+ }
521
+ },
522
+ "coordinates": {
523
+ "$schema": "http://json-schema.org/draft-07/schema#",
524
+ "title": "atomic coordinates schema",
525
+ "description": "atomic coordinates schema",
526
+ "type": "array",
527
+ "items": {
528
+ "$schema": "http://json-schema.org/draft-07/schema#",
529
+ "title": "atomic coordinate schema",
530
+ "description": "coordinate of an atom",
531
+ "type": "object",
532
+ "required": [
533
+ "id",
534
+ "value"
535
+ ],
536
+ "properties": {
537
+ "value": {
538
+ "$schema": "http://json-schema.org/draft-07/schema#",
539
+ "title": "coordinate 3d schema",
540
+ "type": "array",
541
+ "minItems": 3,
542
+ "maxItems": 3,
543
+ "description": "value of this entry",
544
+ "items": {
545
+ "type": "number"
546
+ }
547
+ },
548
+ "id": {
549
+ "description": "integer id of this entry",
550
+ "type": "integer"
551
+ }
552
+ }
553
+ }
554
+ },
555
+ "units": {
556
+ "$schema": "http://json-schema.org/draft-07/schema#",
557
+ "title": "basis units enum",
558
+ "enum": [
559
+ "crystal",
560
+ "cartesian"
561
+ ],
562
+ "default": "crystal"
563
+ },
564
+ "labels": {
565
+ "$schema": "http://json-schema.org/draft-07/schema#",
566
+ "title": "atomic labels schema",
567
+ "description": "atomic labels schema",
568
+ "type": "array",
569
+ "items": {
570
+ "$schema": "http://json-schema.org/draft-07/schema#",
571
+ "title": "atomic label schema",
572
+ "description": "Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.",
573
+ "type": "object",
574
+ "required": [
575
+ "id",
576
+ "value"
577
+ ],
578
+ "properties": {
579
+ "value": {
580
+ "anyOf": [
581
+ {
582
+ "type": [
583
+ "integer",
584
+ "string",
585
+ "number"
586
+ ]
587
+ },
588
+ {
589
+ "$schema": "http://json-schema.org/draft-07/schema#",
590
+ "title": "integer positive single digit",
591
+ "type": "integer",
592
+ "minimum": 1,
593
+ "maximum": 9
594
+ }
595
+ ],
596
+ "description": "value of this entry"
597
+ },
598
+ "id": {
599
+ "description": "integer id of this entry",
600
+ "type": "integer"
601
+ }
602
+ }
603
+ }
604
+ }
605
+ }
606
+ },
607
+ "lattice": {
608
+ "$schema": "http://json-schema.org/draft-07/schema#",
609
+ "title": "lattice schema",
610
+ "type": "object",
611
+ "required": [
612
+ "a",
613
+ "b",
614
+ "c",
615
+ "alpha",
616
+ "beta",
617
+ "gamma"
618
+ ],
619
+ "properties": {
620
+ "a": {
621
+ "description": "length of the first lattice vector",
622
+ "type": "number"
623
+ },
624
+ "b": {
625
+ "description": "length of the second lattice vector",
626
+ "type": "number"
627
+ },
628
+ "c": {
629
+ "description": "length of the third lattice vector",
630
+ "type": "number"
631
+ },
632
+ "alpha": {
633
+ "description": "angle between first and second lattice vector",
634
+ "type": "number"
635
+ },
636
+ "beta": {
637
+ "description": "angle between second and third lattice vector",
638
+ "type": "number"
639
+ },
640
+ "gamma": {
641
+ "description": "angle between first and third lattice vector",
642
+ "type": "number"
643
+ },
644
+ "vectors": {
645
+ "$schema": "http://json-schema.org/draft-07/schema#",
646
+ "title": "lattice vectors schema",
647
+ "type": "object",
648
+ "required": [
649
+ "a",
650
+ "b",
651
+ "c"
652
+ ],
653
+ "properties": {
654
+ "a": {
655
+ "$schema": "http://json-schema.org/draft-07/schema#",
656
+ "title": "vector 3d schema",
657
+ "type": "array",
658
+ "minItems": 3,
659
+ "maxItems": 3,
660
+ "items": {
661
+ "type": "number"
662
+ }
663
+ },
664
+ "b": {
665
+ "$schema": "http://json-schema.org/draft-07/schema#",
666
+ "title": "vector 3d schema",
667
+ "type": "array",
668
+ "minItems": 3,
669
+ "maxItems": 3,
670
+ "items": {
671
+ "type": "number"
672
+ }
673
+ },
674
+ "c": {
675
+ "$schema": "http://json-schema.org/draft-07/schema#",
676
+ "title": "vector 3d schema",
677
+ "type": "array",
678
+ "minItems": 3,
679
+ "maxItems": 3,
680
+ "items": {
681
+ "type": "number"
682
+ }
683
+ },
684
+ "alat": {
685
+ "description": "lattice parameter for fractional coordinates",
686
+ "type": "number",
687
+ "default": 1
688
+ },
689
+ "units": {
690
+ "$schema": "http://json-schema.org/draft-07/schema#",
691
+ "title": "lattice vectors units enum",
692
+ "enum": [
693
+ "angstrom",
694
+ "bohr"
695
+ ],
696
+ "default": "angstrom"
697
+ }
698
+ }
699
+ },
700
+ "type": {
701
+ "$schema": "http://json-schema.org/draft-07/schema#",
702
+ "title": "lattice type enum",
703
+ "type": "string",
704
+ "enum": [
705
+ "CUB",
706
+ "BCC",
707
+ "FCC",
708
+ "TET",
709
+ "MCL",
710
+ "ORC",
711
+ "ORCC",
712
+ "ORCF",
713
+ "ORCI",
714
+ "HEX",
715
+ "BCT",
716
+ "TRI",
717
+ "MCLC",
718
+ "RHL"
719
+ ],
720
+ "default": "TRI"
721
+ },
722
+ "units": {
723
+ "$schema": "http://json-schema.org/draft-07/schema#",
724
+ "title": "Lattice units schema",
725
+ "type": "object",
726
+ "default": {
727
+ "length": "angstrom",
728
+ "angle": "degree"
729
+ },
730
+ "properties": {
731
+ "length": {
732
+ "$schema": "http://json-schema.org/draft-07/schema#",
733
+ "title": "lattice units length enum",
734
+ "enum": [
735
+ "angstrom",
736
+ "bohr"
737
+ ],
738
+ "default": "angstrom"
739
+ },
740
+ "angle": {
741
+ "$schema": "http://json-schema.org/draft-07/schema#",
742
+ "title": "lattice units angle enum",
743
+ "enum": [
744
+ "degree",
745
+ "radian"
746
+ ],
747
+ "default": "degree"
748
+ }
749
+ }
750
+ }
751
+ }
752
+ },
753
+ "derivedProperties": {
754
+ "$schema": "http://json-schema.org/draft-07/schema#",
755
+ "title": "derived properties schema",
756
+ "type": "array",
757
+ "items": {
758
+ "oneOf": [
759
+ {
760
+ "$schema": "http://json-schema.org/draft-07/schema#",
761
+ "title": "volume schema",
762
+ "type": "object",
763
+ "required": [
764
+ "value"
765
+ ],
766
+ "properties": {
767
+ "name": {
768
+ "enum": [
769
+ "volume"
770
+ ]
771
+ },
772
+ "units": {
773
+ "enum": [
774
+ "angstrom^3"
775
+ ]
776
+ },
777
+ "value": {
778
+ "type": "number"
779
+ }
780
+ }
781
+ },
782
+ {
783
+ "$schema": "http://json-schema.org/draft-07/schema#",
784
+ "title": "density schema",
785
+ "type": "object",
786
+ "required": [
787
+ "value"
788
+ ],
789
+ "properties": {
790
+ "name": {
791
+ "enum": [
792
+ "density"
793
+ ]
794
+ },
795
+ "units": {
796
+ "enum": [
797
+ "g/cm^3"
798
+ ]
799
+ },
800
+ "value": {
801
+ "type": "number"
802
+ }
803
+ }
804
+ },
805
+ {
806
+ "$schema": "http://json-schema.org/draft-07/schema#",
807
+ "title": "symmetry schema",
808
+ "type": "object",
809
+ "properties": {
810
+ "pointGroupSymbol": {
811
+ "description": "point group symbol in Schoenflies notation",
812
+ "type": "string"
813
+ },
814
+ "spaceGroupSymbol": {
815
+ "description": "space group symbol in Hermann–Mauguin notation",
816
+ "type": "string"
817
+ },
818
+ "tolerance": {
819
+ "type": "object",
820
+ "description": "tolerance used for symmetry calculation",
821
+ "$schema": "http://json-schema.org/draft-07/schema#",
822
+ "title": "scalar schema",
823
+ "required": [
824
+ "value"
825
+ ],
826
+ "properties": {
827
+ "units": {
828
+ "enum": [
829
+ "angstrom"
830
+ ]
831
+ },
832
+ "value": {
833
+ "type": "number"
834
+ }
835
+ }
836
+ },
837
+ "name": {
838
+ "enum": [
839
+ "symmetry"
840
+ ]
841
+ }
842
+ }
843
+ },
844
+ {
845
+ "$schema": "http://json-schema.org/draft-07/schema#",
846
+ "title": "elemental-ratio",
847
+ "description": "ration of this element in the compound",
848
+ "type": "object",
849
+ "required": [
850
+ "value"
851
+ ],
852
+ "properties": {
853
+ "name": {
854
+ "enum": [
855
+ "elemental_ratio"
856
+ ]
857
+ },
858
+ "value": {
859
+ "type": "number",
860
+ "minimum": 0,
861
+ "maximum": 1
862
+ },
863
+ "element": {
864
+ "type": "string",
865
+ "description": "the element this ratio is for"
866
+ }
867
+ }
868
+ },
869
+ {
870
+ "$schema": "http://json-schema.org/draft-07/schema#",
871
+ "title": "p_norm",
872
+ "description": "https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm",
873
+ "type": "object",
874
+ "required": [
875
+ "value"
876
+ ],
877
+ "properties": {
878
+ "name": {
879
+ "enum": [
880
+ "p-norm"
881
+ ]
882
+ },
883
+ "degree": {
884
+ "type": "integer",
885
+ "description": "degree of the dimensionality of the norm"
886
+ },
887
+ "value": {
888
+ "type": "number"
889
+ }
890
+ }
891
+ },
892
+ {
893
+ "$schema": "http://json-schema.org/draft-07/schema#",
894
+ "title": "InChI representation schema",
895
+ "type": "object",
896
+ "required": [
897
+ "value"
898
+ ],
899
+ "properties": {
900
+ "name": {
901
+ "enum": [
902
+ "inchi"
903
+ ]
904
+ },
905
+ "value": {
906
+ "type": "string"
907
+ }
908
+ }
909
+ },
910
+ {
911
+ "$schema": "http://json-schema.org/draft-07/schema#",
912
+ "title": "InChI key representation schema",
913
+ "type": "object",
914
+ "required": [
915
+ "value"
916
+ ],
917
+ "properties": {
918
+ "name": {
919
+ "enum": [
920
+ "inchi_key"
921
+ ]
922
+ },
923
+ "value": {
924
+ "type": "string"
925
+ }
926
+ }
927
+ }
928
+ ],
929
+ "discriminator": {
930
+ "propertyName": "name"
931
+ },
932
+ "required": [
933
+ "name"
934
+ ]
935
+ }
936
+ },
937
+ "external": {
938
+ "$schema": "http://json-schema.org/draft-07/schema#",
939
+ "title": "database source schema",
940
+ "description": "information about a database source",
941
+ "type": "object",
942
+ "required": [
943
+ "id",
944
+ "source",
945
+ "origin"
946
+ ],
947
+ "properties": {
948
+ "id": {
949
+ "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",
950
+ "oneOf": [
951
+ {
952
+ "type": "string"
953
+ },
954
+ {
955
+ "type": "number"
956
+ }
957
+ ]
958
+ },
959
+ "source": {
960
+ "description": "Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.",
961
+ "type": "string"
962
+ },
963
+ "origin": {
964
+ "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).",
965
+ "type": "boolean"
966
+ },
967
+ "data": {
968
+ "description": "Original response from external source.",
969
+ "type": "object"
970
+ },
971
+ "doi": {
972
+ "description": "Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506",
973
+ "type": "string"
974
+ },
975
+ "url": {
976
+ "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",
977
+ "type": "string"
978
+ }
979
+ }
980
+ },
981
+ "src": {
982
+ "$schema": "http://json-schema.org/draft-07/schema#",
983
+ "title": "file source schema",
984
+ "description": "file source with the information inside",
985
+ "type": "object",
986
+ "required": [
987
+ "filename",
988
+ "text",
989
+ "hash"
990
+ ],
991
+ "properties": {
992
+ "extension": {
993
+ "description": "file extension",
994
+ "type": "string"
995
+ },
996
+ "filename": {
997
+ "description": "file name without extension",
998
+ "type": "string"
999
+ },
1000
+ "text": {
1001
+ "description": "file content as raw text",
1002
+ "type": "string"
1003
+ },
1004
+ "hash": {
1005
+ "description": "MD5 hash based on file content",
1006
+ "type": "string"
1007
+ }
1008
+ }
1009
+ },
1010
+ "scaledHash": {
1011
+ "description": "Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).",
1012
+ "type": "string"
1013
+ },
1014
+ "icsdId": {
1015
+ "description": "Corresponding ICSD id of the material",
1016
+ "type": "integer"
1017
+ },
1018
+ "isNonPeriodic": {
1019
+ "description": "Whether to work in the finite molecular picture (usually with atomic orbital basis)",
1020
+ "type": "boolean"
1021
+ },
1022
+ "consistencyChecks": {
1023
+ "type": "array",
1024
+ "items": {
1025
+ "$schema": "http://json-schema.org/draft-07/schema#",
1026
+ "title": "material consistency check schema",
1027
+ "type": "object",
1028
+ "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.",
1029
+ "required": [
1030
+ "key",
1031
+ "name",
1032
+ "severity",
1033
+ "message"
1034
+ ],
1035
+ "properties": {
1036
+ "name": {
1037
+ "type": "string",
1038
+ "enum": [
1039
+ "default",
1040
+ "atomsTooClose",
1041
+ "atomsOverlap"
1042
+ ],
1043
+ "description": "Name of the consistency check that is performed, which is listed in an enum."
1044
+ },
1045
+ "key": {
1046
+ "type": "string",
1047
+ "description": "Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"
1048
+ },
1049
+ "severity": {
1050
+ "enum": [
1051
+ "info",
1052
+ "warning",
1053
+ "error"
1054
+ ],
1055
+ "description": "Severity level of the problem, which is used in UI to differentiate."
1056
+ },
1057
+ "message": {
1058
+ "type": "string",
1059
+ "description": "Message generated by the consistency check describing the problem."
1060
+ }
1061
+ }
1062
+ }
1063
+ },
1064
+ "_id": {
1065
+ "description": "entity identity",
1066
+ "type": "string"
1067
+ },
1068
+ "slug": {
1069
+ "description": "entity slug",
1070
+ "type": "string"
1071
+ },
1072
+ "systemName": {
1073
+ "type": "string"
1074
+ },
1075
+ "schemaVersion": {
1076
+ "description": "entity's schema version. Used to distinct between different schemas.",
1077
+ "type": "string",
1078
+ "default": "2022.8.16"
1079
+ },
1080
+ "name": {
1081
+ "description": "entity name",
1082
+ "type": "string"
1083
+ },
1084
+ "isDefault": {
1085
+ "description": "Identifies that entity is defaultable",
1086
+ "type": "boolean",
1087
+ "default": false
1088
+ },
1089
+ "metadata": {
1090
+ "type": "object"
1091
+ }
1092
+ }
1093
+ },
1094
+ "use_conventional_cell": {
1095
+ "type": "boolean",
1096
+ "description": "Use the conventional cell for the crystal structure",
1097
+ "default": true
1098
+ }
1099
+ }
1100
+ }