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