@mat3ra/esse 2026.5.18-2 → 2026.5.27-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 (383) hide show
  1. package/dist/js/esse/JSONSchemasGenerator.d.ts +2 -1
  2. package/dist/js/esse/JSONSchemasGenerator.js +1 -1
  3. package/dist/js/esse/JSONSchemasInterface.d.ts +1 -1
  4. package/dist/js/esse/JSONSchemasInterface.js +1 -1
  5. package/dist/js/esse/JSONSchemasInterfaceServer.js +3 -2
  6. package/dist/js/esse/schemaUtils.d.ts +1 -1
  7. package/dist/js/esse/schemaUtils.js +2 -1
  8. package/dist/js/esse/server/utils.d.ts +12 -0
  9. package/dist/js/esse/server/utils.js +68 -0
  10. package/dist/js/esse/utils.d.ts +0 -11
  11. package/dist/js/esse/utils.js +3 -60
  12. package/dist/js/example/job.json +38 -11
  13. package/dist/js/example/material.json +7 -1
  14. package/dist/js/example/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +35 -5
  15. package/dist/js/example/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +28 -4
  16. package/dist/js/example/materials_category/defective_structures/two_dimensional/adatom/configuration.json +28 -4
  17. package/dist/js/example/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +35 -5
  18. package/dist/js/example/materials_category/defective_structures/two_dimensional/island/configuration.json +42 -6
  19. package/dist/js/example/materials_category/defective_structures/two_dimensional/terrace/configuration.json +42 -6
  20. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.json +14 -2
  21. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.json +14 -2
  22. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.json +14 -2
  23. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.json +7 -1
  24. package/dist/js/example/materials_category/pristine_structures/two_dimensional/nanoribbon.json +21 -3
  25. package/dist/js/example/materials_category/pristine_structures/two_dimensional/nanotape.json +14 -2
  26. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab.json +14 -2
  27. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +14 -2
  28. package/dist/js/example/materials_category/processed_structures/two_dimensional/passivation/configuration.json +28 -4
  29. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +7 -1
  30. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.json +7 -1
  31. package/dist/js/example/materials_category_components/entities/core/three_dimensional/crystal.json +7 -1
  32. package/dist/js/example/materials_category_components/entities/core/two_dimensional/vacuum.json +7 -1
  33. package/dist/js/example/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.json +7 -1
  34. package/dist/js/example/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.json +7 -1
  35. package/dist/js/example/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +28 -4
  36. package/dist/js/example/materials_category_components/operations/core/combinations/merge.json +14 -2
  37. package/dist/js/example/materials_category_components/operations/core/combinations/stack.json +14 -2
  38. package/dist/js/example/materials_category_components/operations/core/modifications/perturb.json +7 -1
  39. package/dist/js/example/model.json +2 -1
  40. package/dist/js/example/software/application.json +1 -0
  41. package/dist/js/example/software/executable.json +3 -4
  42. package/dist/js/example/software/flavor.json +9 -2
  43. package/dist/js/example/software/template.json +5 -8
  44. package/dist/js/example/software_directory/modeling/espresso.json +2 -1
  45. package/dist/js/example/software_directory/modeling/nwchem.json +3 -1
  46. package/dist/js/example/software_directory/modeling/unit/execution.json +57 -15
  47. package/dist/js/example/software_directory/modeling/vasp.json +2 -1
  48. package/dist/js/example/software_directory/scripting/jupyter_lab.json +2 -1
  49. package/dist/js/example/software_directory/scripting/python.json +2 -1
  50. package/dist/js/example/software_directory/scripting/shell.json +2 -1
  51. package/dist/js/example/software_directory/scripting/unit/execution.json +57 -15
  52. package/dist/js/example/system/runtime_items.json +14 -0
  53. package/dist/js/example/workflow/subworkflow.json +32 -10
  54. package/dist/js/example/workflow/unit/assignment.json +5 -1
  55. package/dist/js/example/workflow/unit/condition.json +5 -1
  56. package/dist/js/example/workflow/unit/execution.json +29 -9
  57. package/dist/js/example/workflow/unit/io/api.json +1 -0
  58. package/dist/js/example/workflow/unit/io/db_collection.json +5 -0
  59. package/dist/js/example/workflow/unit/io/db_ids.json +6 -0
  60. package/dist/js/example/workflow/unit/io/object_storage.json +2 -1
  61. package/dist/js/example/workflow/unit/io.json +22 -2
  62. package/dist/js/example/workflow/unit/map.json +5 -1
  63. package/dist/js/example/workflow/unit/reduce.json +5 -1
  64. package/dist/js/example/workflow.json +38 -11
  65. package/dist/js/schema/apse/file/applications/espresso/7.2/pw.x/atomic_species.json +5 -0
  66. package/dist/js/schema/apse/file/applications/espresso/7.2/pw.x.json +5 -0
  67. package/dist/js/schema/context_providers_directory/by_application/nwchem_total_energy_context_provider.json +7 -1
  68. package/dist/js/schema/context_providers_directory/by_application/qe_neb_context_provider.json +164 -6
  69. package/dist/js/schema/context_providers_directory/by_application/qe_pwx_base_context_provider.json +10 -0
  70. package/dist/js/schema/context_providers_directory/by_application/qe_pwx_context_provider.json +17 -1
  71. package/dist/js/schema/context_providers_directory/by_application/vasp_context_provider.json +7 -1
  72. package/dist/js/schema/context_providers_directory/by_application/vasp_neb_context_provider.json +7 -1
  73. package/dist/js/schema/context_providers_directory/collinear_magnetization_context_provider.json +14 -0
  74. package/dist/js/schema/context_providers_directory/non_collinear_magnetization_context_provider.json +7 -0
  75. package/dist/js/schema/context_providers_directory/points_grid_data_provider.json +23 -6
  76. package/dist/js/schema/context_providers_directory/points_path_data_provider.json +6 -2
  77. package/dist/js/schema/context_providers_directory/points_path_data_provider_rendering.json +32 -0
  78. package/dist/js/schema/core/primitive/linked_list/named_node.json +2 -1
  79. package/dist/js/schema/core/primitive/linked_list/named_node_in_group.json +2 -1
  80. package/dist/js/schema/core/primitive/linked_list.json +4 -2
  81. package/dist/js/schema/in_memory_entity/has_consistency_check_has_metadata_named_defaultable.json +3 -0
  82. package/dist/js/schema/in_memory_entity/named.json +3 -0
  83. package/dist/js/schema/in_memory_entity/named_defaultable.json +3 -0
  84. package/dist/js/schema/in_memory_entity/named_defaultable_has_metadata.json +3 -0
  85. package/dist/js/schema/in_memory_entity/named_defaultable_runtime_items.json +3 -0
  86. package/dist/js/schema/job/base.json +133 -132
  87. package/dist/js/schema/job/compute.json +1 -1
  88. package/dist/js/schema/job/compute_property.json +182 -0
  89. package/dist/js/schema/job.json +3829 -4566
  90. package/dist/js/schema/material/material_properties.json +736 -0
  91. package/dist/js/schema/material/metadata/boundary_conditions.json +32 -0
  92. package/dist/js/schema/material/metadata/bulk_properties.json +13 -0
  93. package/dist/js/schema/material/metadata/slab_properties.json +41 -0
  94. package/dist/js/schema/material/metadata.json +101 -0
  95. package/dist/js/schema/material.json +117 -27
  96. package/dist/js/schema/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +1069 -268
  97. package/dist/js/schema/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +1069 -268
  98. package/dist/js/schema/materials_category/defective_structures/two_dimensional/adatom/configuration.json +464 -108
  99. package/dist/js/schema/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +1069 -268
  100. package/dist/js/schema/materials_category/defective_structures/two_dimensional/island/configuration.json +698 -164
  101. package/dist/js/schema/materials_category/defective_structures/two_dimensional/terrace/configuration.json +698 -164
  102. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.json +116 -27
  103. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.json +232 -54
  104. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.json +232 -54
  105. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.json +116 -27
  106. package/dist/js/schema/materials_category/pristine_structures/three_dimensional/ideal_crystal.json +116 -27
  107. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanoribbon.json +348 -81
  108. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanotape.json +232 -54
  109. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab.json +232 -54
  110. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +232 -54
  111. package/dist/js/schema/materials_category/processed_structures/two_dimensional/passivation/configuration.json +233 -54
  112. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +116 -27
  113. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.json +116 -27
  114. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/void_region.json +116 -27
  115. package/dist/js/schema/materials_category_components/entities/core/three_dimensional/crystal.json +116 -27
  116. package/dist/js/schema/materials_category_components/entities/core/two_dimensional/vacuum.json +116 -27
  117. package/dist/js/schema/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.json +116 -27
  118. package/dist/js/schema/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.json +116 -27
  119. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.json +116 -27
  120. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.json +116 -27
  121. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/strained_uniform.json +116 -27
  122. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/supercell.json +116 -27
  123. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers.json +116 -27
  124. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.json +116 -27
  125. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.json +116 -27
  126. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.json +116 -27
  127. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +348 -81
  128. package/dist/js/schema/materials_category_components/operations/core/modifications/perturb.json +117 -27
  129. package/dist/js/schema/method/categorized_method.json +4 -0
  130. package/dist/js/schema/method/unit_method.json +3 -0
  131. package/dist/js/schema/method.json +7 -1
  132. package/dist/js/schema/methods_directory/legacy/localorbital.json +7 -1
  133. package/dist/js/schema/methods_directory/legacy/pseudopotential.json +7 -1
  134. package/dist/js/schema/methods_directory/legacy/regression.json +4 -0
  135. package/dist/js/schema/methods_directory/legacy/unknown.json +7 -1
  136. package/dist/js/schema/methods_directory/mathematical/cg.json +2 -1
  137. package/dist/js/schema/methods_directory/mathematical/davidson.json +2 -1
  138. package/dist/js/schema/methods_directory/mathematical/regression.json +3 -2
  139. package/dist/js/schema/methods_directory/physical/ao/dunning.json +2 -1
  140. package/dist/js/schema/methods_directory/physical/ao/other.json +2 -1
  141. package/dist/js/schema/methods_directory/physical/ao/pople.json +2 -1
  142. package/dist/js/schema/methods_directory/physical/psp.json +2 -1
  143. package/dist/js/schema/methods_directory/physical/pw.json +2 -1
  144. package/dist/js/schema/methods_directory/physical/smearing.json +2 -1
  145. package/dist/js/schema/methods_directory/physical/tetrahedron.json +2 -1
  146. package/dist/js/schema/model/categorized_model.json +5 -0
  147. package/dist/js/schema/model/model_without_method.json +1 -0
  148. package/dist/js/schema/model.json +7 -2
  149. package/dist/js/schema/models_directory/double_hybrid.json +1 -0
  150. package/dist/js/schema/models_directory/gga.json +1 -0
  151. package/dist/js/schema/models_directory/gw.json +1 -0
  152. package/dist/js/schema/models_directory/hybrid.json +1 -0
  153. package/dist/js/schema/models_directory/lda.json +1 -0
  154. package/dist/js/schema/models_directory/legacy/any.json +488 -0
  155. package/dist/js/schema/models_directory/legacy/dft.json +267 -39
  156. package/dist/js/schema/models_directory/legacy/ml.json +10 -9
  157. package/dist/js/schema/models_directory/legacy/unknown.json +10 -9
  158. package/dist/js/schema/models_directory/mgga.json +1 -0
  159. package/dist/js/schema/models_directory/re.json +1 -0
  160. package/dist/js/schema/project.json +3 -0
  161. package/dist/js/schema/properties_directory/non_scalar/workflow.json +3682 -4421
  162. package/dist/js/schema/property/holder.json +3717 -4456
  163. package/dist/js/schema/software/application.json +53 -24
  164. package/dist/js/schema/software/application_properties.json +68 -0
  165. package/dist/js/schema/software/application_with_build_config.json +52 -23
  166. package/dist/js/schema/software/executable.json +67 -108
  167. package/dist/js/schema/software/executable_properties.json +24 -0
  168. package/dist/js/schema/software/flavor.json +90 -128
  169. package/dist/js/schema/software/flavor_properties.json +50 -0
  170. package/dist/js/schema/software/template.json +30 -35
  171. package/dist/js/schema/software/template_properties.json +44 -0
  172. package/dist/js/schema/software_directory/modeling/deepmd.json +48 -19
  173. package/dist/js/schema/software_directory/modeling/lammps.json +47 -18
  174. package/dist/js/schema/software_directory/modeling/nwchem.json +48 -19
  175. package/dist/js/schema/software_directory/modeling/unit/execution.json +2019 -455
  176. package/dist/js/schema/software_directory/modeling/vasp.json +48 -19
  177. package/dist/js/schema/software_directory/scripting/jupyter_lab.json +48 -19
  178. package/dist/js/schema/software_directory/scripting/python.json +48 -19
  179. package/dist/js/schema/software_directory/scripting/shell.json +48 -19
  180. package/dist/js/schema/software_directory/scripting/unit/execution.json +2019 -455
  181. package/dist/js/schema/system/bankable.json +4 -0
  182. package/dist/js/schema/system/creator.json +2 -1
  183. package/dist/js/schema/system/creator_account.json +3 -0
  184. package/dist/js/schema/system/in_set.json +3 -0
  185. package/dist/js/schema/system/name.json +3 -0
  186. package/dist/js/schema/system/owner.json +2 -1
  187. package/dist/js/schema/system/path_entity.json +3 -0
  188. package/dist/js/schema/system/runtime_item.json +17 -0
  189. package/dist/js/schema/system/runtime_items.json +94 -0
  190. package/dist/js/schema/workflow/base.json +4591 -39
  191. package/dist/js/schema/workflow/base_flow.json +1 -1
  192. package/dist/js/schema/workflow/subworkflow/mixin.json +3919 -0
  193. package/dist/js/schema/workflow/subworkflow/unit.json +2365 -1560
  194. package/dist/js/schema/workflow/subworkflow.json +3137 -1852
  195. package/dist/js/schema/workflow/unit/assertion.json +96 -140
  196. package/dist/js/schema/workflow/unit/assignment.json +129 -173
  197. package/dist/js/schema/workflow/unit/base.json +90 -133
  198. package/dist/js/schema/workflow/unit/condition.json +132 -175
  199. package/dist/js/schema/workflow/unit/context/_base.json +20 -0
  200. package/dist/js/schema/workflow/unit/context/_extra_data_material_hash.json +14 -0
  201. package/dist/js/schema/workflow/unit/context/item/boundaryConditions.json +63 -0
  202. package/dist/js/schema/workflow/unit/context/item/collinearMagnetization.json +82 -0
  203. package/dist/js/schema/workflow/unit/context/item/cutoffs.json +38 -0
  204. package/dist/js/schema/workflow/unit/context/item/dynamics.json +48 -0
  205. package/dist/js/schema/workflow/unit/context/item/grid.json +100 -0
  206. package/dist/js/schema/workflow/unit/context/item/hubbard_j.json +59 -0
  207. package/dist/js/schema/workflow/unit/context/item/hubbard_legacy.json +49 -0
  208. package/dist/js/schema/workflow/unit/context/item/hubbard_u.json +57 -0
  209. package/dist/js/schema/workflow/unit/context/item/hubbard_v.json +64 -0
  210. package/dist/js/schema/workflow/unit/context/item/input.json +712 -0
  211. package/dist/js/schema/workflow/unit/context/item/mlSettings.json +43 -0
  212. package/dist/js/schema/workflow/unit/context/item/mlTrainTestSplit.json +37 -0
  213. package/dist/js/schema/workflow/unit/context/item/neb.json +35 -0
  214. package/dist/js/schema/workflow/unit/context/item/nonCollinearMagnetization.json +150 -0
  215. package/dist/js/schema/workflow/unit/context/item/path.json +62 -0
  216. package/dist/js/schema/workflow/unit/context/item.json +1594 -0
  217. package/dist/js/schema/workflow/unit/execution.json +1928 -423
  218. package/dist/js/schema/workflow/unit/input/_input.json +74 -12
  219. package/dist/js/schema/workflow/unit/input/_inputItem.json +70 -10
  220. package/dist/js/schema/workflow/unit/input/_inputItemId.json +3 -1
  221. package/dist/js/schema/workflow/unit/io/api.json +5 -1
  222. package/dist/js/schema/workflow/unit/io/db_collection.json +24 -0
  223. package/dist/js/schema/workflow/unit/io/db_ids.json +22 -0
  224. package/dist/js/schema/workflow/unit/io/object_storage.json +5 -1
  225. package/dist/js/schema/workflow/unit/io.json +182 -253
  226. package/dist/js/schema/workflow/unit/map.json +134 -177
  227. package/dist/js/schema/workflow/unit/mixins/assertion.json +23 -0
  228. package/dist/js/schema/workflow/unit/mixins/assignment.json +57 -0
  229. package/dist/js/schema/workflow/unit/mixins/base.json +50 -0
  230. package/dist/js/schema/workflow/unit/mixins/condition.json +61 -0
  231. package/dist/js/schema/workflow/unit/mixins/execution.json +1998 -0
  232. package/dist/js/schema/workflow/unit/mixins/io.json +131 -0
  233. package/dist/js/schema/workflow/unit/mixins/map.json +60 -0
  234. package/dist/js/schema/workflow/unit/mixins/processing.json +27 -0
  235. package/dist/js/schema/workflow/unit/mixins/reduce.json +43 -0
  236. package/dist/js/schema/workflow/unit/mixins/subworkflow.json +11 -0
  237. package/dist/js/schema/workflow/unit/reduce.json +117 -160
  238. package/dist/js/schema/workflow/unit/subworkflow.json +91 -134
  239. package/dist/js/schema/workflow/unit.json +285 -2477
  240. package/dist/js/schema/workflow.json +3684 -4422
  241. package/dist/js/schemas.json +1 -1
  242. package/dist/js/scripts/compileTs.js +1 -1
  243. package/dist/js/scripts/setSchemaIds.js +2 -1
  244. package/dist/js/types.d.ts +27163 -15301
  245. package/dist/js/types.js +5 -5
  246. package/dist/js/utils/ajv.js +5 -4
  247. package/dist/js/utils/common.js +3 -2
  248. package/dist/js/utils/filesystem.js +3 -2
  249. package/example/material.json +7 -1
  250. package/example/model.json +2 -1
  251. package/example/software/application.json +1 -0
  252. package/example/software/executable.json +3 -4
  253. package/example/software/flavor.json +9 -2
  254. package/example/software/template.json +5 -8
  255. package/example/software_directory/modeling/espresso.json +2 -1
  256. package/example/software_directory/modeling/nwchem.json +4 -2
  257. package/example/software_directory/modeling/unit/execution.json +17 -2
  258. package/example/software_directory/modeling/vasp.json +2 -1
  259. package/example/software_directory/scripting/jupyter-lab.json +2 -1
  260. package/example/software_directory/scripting/python.json +2 -1
  261. package/example/software_directory/scripting/shell.json +2 -1
  262. package/example/software_directory/scripting/unit/execution.json +17 -2
  263. package/example/system/runtime_items.json +14 -0
  264. package/example/workflow/unit/assignment.json +5 -1
  265. package/example/workflow/unit/condition.json +5 -1
  266. package/example/workflow/unit/execution.json +7 -3
  267. package/example/workflow/unit/io/api.json +1 -0
  268. package/example/workflow/unit/io/db_collection.json +5 -0
  269. package/example/workflow/unit/io/db_ids.json +6 -0
  270. package/example/workflow/unit/io/object_storage.json +2 -1
  271. package/example/workflow/unit/io.json +9 -29
  272. package/example/workflow/unit/map.json +5 -1
  273. package/example/workflow/unit/reduce.json +5 -1
  274. package/example/workflow.json +6 -1
  275. package/package.json +2 -1
  276. package/schema/apse/file/applications/espresso/7.2/pw.x/atomic_species.json +6 -1
  277. package/schema/context_providers_directory/by_application/nwchem_total_energy_context_provider.json +7 -1
  278. package/schema/context_providers_directory/by_application/qe_neb_context_provider.json +12 -6
  279. package/schema/context_providers_directory/by_application/qe_pwx_context_provider.json +10 -1
  280. package/schema/context_providers_directory/by_application/vasp_context_provider.json +7 -1
  281. package/schema/context_providers_directory/by_application/vasp_neb_context_provider.json +7 -1
  282. package/schema/context_providers_directory/collinear_magnetization_context_provider.json +18 -4
  283. package/schema/context_providers_directory/non_collinear_magnetization_context_provider.json +7 -0
  284. package/schema/context_providers_directory/points_grid_data_provider.json +24 -7
  285. package/schema/context_providers_directory/points_path_data_provider.json +7 -3
  286. package/schema/context_providers_directory/points_path_data_provider_rendering.json +32 -0
  287. package/schema/job/base.json +4 -5
  288. package/schema/job/compute.json +1 -1
  289. package/schema/job/compute_property.json +15 -0
  290. package/schema/material/material_properties.json +65 -0
  291. package/schema/material/metadata/boundary_conditions.json +24 -0
  292. package/schema/material/metadata/bulk_properties.json +13 -0
  293. package/schema/material/metadata/slab_properties.json +41 -0
  294. package/schema/material/metadata.json +27 -0
  295. package/schema/material.json +5 -57
  296. package/schema/method.json +7 -1
  297. package/schema/model.json +0 -1
  298. package/schema/models_directory/legacy/any.json +20 -0
  299. package/schema/models_directory/legacy/dft.json +63 -12
  300. package/schema/models_directory/legacy/ml.json +10 -7
  301. package/schema/models_directory/legacy/unknown.json +10 -7
  302. package/schema/software/application.json +4 -35
  303. package/schema/software/application_properties.json +68 -0
  304. package/schema/software/executable.json +5 -23
  305. package/schema/software/executable_properties.json +24 -0
  306. package/schema/software/flavor.json +6 -28
  307. package/schema/software/flavor_properties.json +33 -0
  308. package/schema/software/template.json +2 -26
  309. package/schema/software/template_properties.json +44 -0
  310. package/schema/system/bankable.json +5 -1
  311. package/schema/system/creator.json +4 -1
  312. package/schema/system/creator_account.json +4 -1
  313. package/schema/system/in_set.json +4 -1
  314. package/schema/system/name.json +4 -1
  315. package/schema/system/owner.json +4 -1
  316. package/schema/system/runtime_item.json +17 -0
  317. package/schema/system/runtime_items.json +42 -0
  318. package/schema/workflow/base.json +17 -17
  319. package/schema/workflow/subworkflow/mixin.json +48 -0
  320. package/schema/workflow/subworkflow/unit.json +0 -6
  321. package/schema/workflow/subworkflow.json +4 -31
  322. package/schema/workflow/unit/assertion.json +2 -16
  323. package/schema/workflow/unit/assignment.json +2 -34
  324. package/schema/workflow/unit/base.json +6 -51
  325. package/schema/workflow/unit/condition.json +2 -38
  326. package/schema/workflow/unit/context/_base.json +20 -0
  327. package/schema/workflow/unit/context/_extra_data_material_hash.json +14 -0
  328. package/schema/workflow/unit/context/item/boundaryConditions.json +27 -0
  329. package/schema/workflow/unit/context/item/collinearMagnetization.json +27 -0
  330. package/schema/workflow/unit/context/item/cutoffs.json +20 -0
  331. package/schema/workflow/unit/context/item/dynamics.json +20 -0
  332. package/schema/workflow/unit/context/item/grid.json +31 -0
  333. package/schema/workflow/unit/context/item/hubbard_j.json +20 -0
  334. package/schema/workflow/unit/context/item/hubbard_legacy.json +20 -0
  335. package/schema/workflow/unit/context/item/hubbard_u.json +27 -0
  336. package/schema/workflow/unit/context/item/hubbard_v.json +20 -0
  337. package/schema/workflow/unit/context/item/input.json +47 -0
  338. package/schema/workflow/unit/context/item/mlSettings.json +20 -0
  339. package/schema/workflow/unit/context/item/mlTrainTestSplit.json +20 -0
  340. package/schema/workflow/unit/context/item/neb.json +20 -0
  341. package/schema/workflow/unit/context/item/nonCollinearMagnetization.json +27 -0
  342. package/schema/workflow/unit/context/item/path.json +33 -0
  343. package/schema/workflow/unit/context/item.json +55 -0
  344. package/schema/workflow/unit/execution.json +4 -25
  345. package/schema/workflow/unit/input/_input.json +1 -1
  346. package/schema/workflow/unit/input/_inputItem.json +9 -9
  347. package/schema/workflow/unit/input/_inputItemId.json +3 -1
  348. package/schema/workflow/unit/io/api.json +6 -2
  349. package/schema/workflow/unit/io/db_collection.json +24 -0
  350. package/schema/workflow/unit/io/db_ids.json +22 -0
  351. package/schema/workflow/unit/io/object_storage.json +6 -2
  352. package/schema/workflow/unit/io.json +2 -39
  353. package/schema/workflow/unit/map.json +2 -53
  354. package/schema/workflow/unit/mixins/assertion.json +23 -0
  355. package/schema/workflow/unit/mixins/assignment.json +42 -0
  356. package/schema/workflow/unit/mixins/base.json +50 -0
  357. package/schema/workflow/unit/mixins/condition.json +46 -0
  358. package/schema/workflow/unit/mixins/execution.json +49 -0
  359. package/schema/workflow/unit/mixins/io.json +46 -0
  360. package/schema/workflow/unit/mixins/map.json +61 -0
  361. package/schema/workflow/unit/{processing.json → mixins/processing.json} +3 -7
  362. package/schema/workflow/unit/mixins/reduce.json +44 -0
  363. package/schema/workflow/unit/mixins/subworkflow.json +12 -0
  364. package/schema/workflow/unit/reduce.json +2 -36
  365. package/schema/workflow/unit/subworkflow.json +4 -6
  366. package/schema/workflow/unit.json +1 -19
  367. package/schema/workflow.json +19 -15
  368. package/src/html/index.html +2 -1
  369. package/src/js/esse/JSONSchemasGenerator.ts +2 -1
  370. package/src/js/esse/JSONSchemasInterface.ts +1 -1
  371. package/src/js/esse/schemaUtils.ts +1 -1
  372. package/src/js/esse/server/utils.ts +82 -0
  373. package/src/js/esse/utils.ts +0 -74
  374. package/src/js/scripts/compileTs.ts +1 -1
  375. package/src/js/scripts/setSchemaIds.ts +1 -0
  376. package/src/js/utils/ajv.ts +1 -1
  377. package/dist/js/example/workflow/unit/io/db.json +0 -15
  378. package/dist/js/example/workflow/unit/processing.json +0 -13
  379. package/dist/js/schema/workflow/unit/io/db.json +0 -40
  380. package/dist/js/schema/workflow/unit/processing.json +0 -242
  381. package/example/workflow/unit/io/db.json +0 -15
  382. package/example/workflow/unit/processing.json +0 -13
  383. package/schema/workflow/unit/io/db.json +0 -40
@@ -220,9 +220,36 @@
220
220
  "type": "object",
221
221
  "required": [
222
222
  "basis",
223
- "lattice"
223
+ "lattice",
224
+ "metadata",
225
+ "name"
224
226
  ],
225
227
  "properties": {
228
+ "_id": {
229
+ "description": "entity identity",
230
+ "type": "string"
231
+ },
232
+ "slug": {
233
+ "description": "entity slug",
234
+ "type": "string"
235
+ },
236
+ "systemName": {
237
+ "type": "string"
238
+ },
239
+ "schemaVersion": {
240
+ "description": "entity's schema version. Used to distinct between different schemas.",
241
+ "type": "string",
242
+ "default": "2022.8.16"
243
+ },
244
+ "name": {
245
+ "description": "entity name",
246
+ "type": "string"
247
+ },
248
+ "isDefault": {
249
+ "description": "Identifies that entity is defaultable",
250
+ "type": "boolean",
251
+ "default": false
252
+ },
226
253
  "formula": {
227
254
  "description": "reduced chemical formula",
228
255
  "type": "string"
@@ -946,33 +973,95 @@
946
973
  }
947
974
  }
948
975
  },
949
- "_id": {
950
- "description": "entity identity",
951
- "type": "string"
952
- },
953
- "slug": {
954
- "description": "entity slug",
955
- "type": "string"
956
- },
957
- "systemName": {
958
- "type": "string"
959
- },
960
- "schemaVersion": {
961
- "description": "entity's schema version. Used to distinct between different schemas.",
962
- "type": "string",
963
- "default": "2022.8.16"
964
- },
965
- "name": {
966
- "description": "entity name",
967
- "type": "string"
968
- },
969
- "isDefault": {
970
- "description": "Identifies that entity is defaultable",
971
- "type": "boolean",
972
- "default": false
973
- },
974
976
  "metadata": {
975
- "type": "object"
977
+ "type": "object",
978
+ "default": {},
979
+ "anyOf": [
980
+ {
981
+ "$schema": "http://json-schema.org/draft-07/schema#",
982
+ "title": "material metadata boundary conditions",
983
+ "type": "object",
984
+ "properties": {
985
+ "boundaryConditions": {
986
+ "type": "object",
987
+ "required": [
988
+ "type",
989
+ "offset"
990
+ ],
991
+ "properties": {
992
+ "type": {
993
+ "type": "string",
994
+ "enum": [
995
+ "pbc",
996
+ "bc1",
997
+ "bc2",
998
+ "bc3"
999
+ ],
1000
+ "default": "pbc",
1001
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
1002
+ },
1003
+ "offset": {
1004
+ "type": "number"
1005
+ }
1006
+ }
1007
+ }
1008
+ },
1009
+ "additionalProperties": true
1010
+ },
1011
+ {
1012
+ "$schema": "http://json-schema.org/draft-07/schema#",
1013
+ "title": "material metadata slab properties",
1014
+ "type": "object",
1015
+ "properties": {
1016
+ "isSlab": {
1017
+ "description": "Whether the material was created as a surface slab",
1018
+ "type": "boolean"
1019
+ },
1020
+ "h": {
1021
+ "description": "Miller index h used to generate the slab",
1022
+ "type": "number"
1023
+ },
1024
+ "k": {
1025
+ "description": "Miller index k used to generate the slab",
1026
+ "type": "number"
1027
+ },
1028
+ "l": {
1029
+ "description": "Miller index l used to generate the slab",
1030
+ "type": "number"
1031
+ },
1032
+ "thickness": {
1033
+ "description": "Slab thickness in number of layers",
1034
+ "type": "number"
1035
+ },
1036
+ "vacuumRatio": {
1037
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
1038
+ "type": "number"
1039
+ },
1040
+ "vx": {
1041
+ "description": "Termination vector component along a",
1042
+ "type": "number"
1043
+ },
1044
+ "vy": {
1045
+ "description": "Termination vector component along b",
1046
+ "type": "number"
1047
+ }
1048
+ },
1049
+ "additionalProperties": true
1050
+ },
1051
+ {
1052
+ "$schema": "http://json-schema.org/draft-07/schema#",
1053
+ "title": "material metadata bulk properties",
1054
+ "type": "object",
1055
+ "properties": {
1056
+ "bulkId": {
1057
+ "description": "Source bulk material id used to generate the slab",
1058
+ "type": "string"
1059
+ }
1060
+ },
1061
+ "additionalProperties": true
1062
+ }
1063
+ ],
1064
+ "additionalProperties": true
976
1065
  }
977
1066
  }
978
1067
  },
@@ -1018,9 +1107,36 @@
1018
1107
  "type": "object",
1019
1108
  "required": [
1020
1109
  "basis",
1021
- "lattice"
1110
+ "lattice",
1111
+ "metadata",
1112
+ "name"
1022
1113
  ],
1023
1114
  "properties": {
1115
+ "_id": {
1116
+ "description": "entity identity",
1117
+ "type": "string"
1118
+ },
1119
+ "slug": {
1120
+ "description": "entity slug",
1121
+ "type": "string"
1122
+ },
1123
+ "systemName": {
1124
+ "type": "string"
1125
+ },
1126
+ "schemaVersion": {
1127
+ "description": "entity's schema version. Used to distinct between different schemas.",
1128
+ "type": "string",
1129
+ "default": "2022.8.16"
1130
+ },
1131
+ "name": {
1132
+ "description": "entity name",
1133
+ "type": "string"
1134
+ },
1135
+ "isDefault": {
1136
+ "description": "Identifies that entity is defaultable",
1137
+ "type": "boolean",
1138
+ "default": false
1139
+ },
1024
1140
  "formula": {
1025
1141
  "description": "reduced chemical formula",
1026
1142
  "type": "string"
@@ -1744,33 +1860,95 @@
1744
1860
  }
1745
1861
  }
1746
1862
  },
1747
- "_id": {
1748
- "description": "entity identity",
1749
- "type": "string"
1750
- },
1751
- "slug": {
1752
- "description": "entity slug",
1753
- "type": "string"
1754
- },
1755
- "systemName": {
1756
- "type": "string"
1757
- },
1758
- "schemaVersion": {
1759
- "description": "entity's schema version. Used to distinct between different schemas.",
1760
- "type": "string",
1761
- "default": "2022.8.16"
1762
- },
1763
- "name": {
1764
- "description": "entity name",
1765
- "type": "string"
1766
- },
1767
- "isDefault": {
1768
- "description": "Identifies that entity is defaultable",
1769
- "type": "boolean",
1770
- "default": false
1771
- },
1772
1863
  "metadata": {
1773
- "type": "object"
1864
+ "type": "object",
1865
+ "default": {},
1866
+ "anyOf": [
1867
+ {
1868
+ "$schema": "http://json-schema.org/draft-07/schema#",
1869
+ "title": "material metadata boundary conditions",
1870
+ "type": "object",
1871
+ "properties": {
1872
+ "boundaryConditions": {
1873
+ "type": "object",
1874
+ "required": [
1875
+ "type",
1876
+ "offset"
1877
+ ],
1878
+ "properties": {
1879
+ "type": {
1880
+ "type": "string",
1881
+ "enum": [
1882
+ "pbc",
1883
+ "bc1",
1884
+ "bc2",
1885
+ "bc3"
1886
+ ],
1887
+ "default": "pbc",
1888
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
1889
+ },
1890
+ "offset": {
1891
+ "type": "number"
1892
+ }
1893
+ }
1894
+ }
1895
+ },
1896
+ "additionalProperties": true
1897
+ },
1898
+ {
1899
+ "$schema": "http://json-schema.org/draft-07/schema#",
1900
+ "title": "material metadata slab properties",
1901
+ "type": "object",
1902
+ "properties": {
1903
+ "isSlab": {
1904
+ "description": "Whether the material was created as a surface slab",
1905
+ "type": "boolean"
1906
+ },
1907
+ "h": {
1908
+ "description": "Miller index h used to generate the slab",
1909
+ "type": "number"
1910
+ },
1911
+ "k": {
1912
+ "description": "Miller index k used to generate the slab",
1913
+ "type": "number"
1914
+ },
1915
+ "l": {
1916
+ "description": "Miller index l used to generate the slab",
1917
+ "type": "number"
1918
+ },
1919
+ "thickness": {
1920
+ "description": "Slab thickness in number of layers",
1921
+ "type": "number"
1922
+ },
1923
+ "vacuumRatio": {
1924
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
1925
+ "type": "number"
1926
+ },
1927
+ "vx": {
1928
+ "description": "Termination vector component along a",
1929
+ "type": "number"
1930
+ },
1931
+ "vy": {
1932
+ "description": "Termination vector component along b",
1933
+ "type": "number"
1934
+ }
1935
+ },
1936
+ "additionalProperties": true
1937
+ },
1938
+ {
1939
+ "$schema": "http://json-schema.org/draft-07/schema#",
1940
+ "title": "material metadata bulk properties",
1941
+ "type": "object",
1942
+ "properties": {
1943
+ "bulkId": {
1944
+ "description": "Source bulk material id used to generate the slab",
1945
+ "type": "string"
1946
+ }
1947
+ },
1948
+ "additionalProperties": true
1949
+ }
1950
+ ],
1951
+ "additionalProperties": true
1774
1952
  }
1775
1953
  }
1776
1954
  }
@@ -1854,9 +2032,36 @@
1854
2032
  "type": "object",
1855
2033
  "required": [
1856
2034
  "basis",
1857
- "lattice"
2035
+ "lattice",
2036
+ "metadata",
2037
+ "name"
1858
2038
  ],
1859
2039
  "properties": {
2040
+ "_id": {
2041
+ "description": "entity identity",
2042
+ "type": "string"
2043
+ },
2044
+ "slug": {
2045
+ "description": "entity slug",
2046
+ "type": "string"
2047
+ },
2048
+ "systemName": {
2049
+ "type": "string"
2050
+ },
2051
+ "schemaVersion": {
2052
+ "description": "entity's schema version. Used to distinct between different schemas.",
2053
+ "type": "string",
2054
+ "default": "2022.8.16"
2055
+ },
2056
+ "name": {
2057
+ "description": "entity name",
2058
+ "type": "string"
2059
+ },
2060
+ "isDefault": {
2061
+ "description": "Identifies that entity is defaultable",
2062
+ "type": "boolean",
2063
+ "default": false
2064
+ },
1860
2065
  "formula": {
1861
2066
  "description": "reduced chemical formula",
1862
2067
  "type": "string"
@@ -2580,33 +2785,95 @@
2580
2785
  }
2581
2786
  }
2582
2787
  },
2583
- "_id": {
2584
- "description": "entity identity",
2585
- "type": "string"
2586
- },
2587
- "slug": {
2588
- "description": "entity slug",
2589
- "type": "string"
2590
- },
2591
- "systemName": {
2592
- "type": "string"
2593
- },
2594
- "schemaVersion": {
2595
- "description": "entity's schema version. Used to distinct between different schemas.",
2596
- "type": "string",
2597
- "default": "2022.8.16"
2598
- },
2599
- "name": {
2600
- "description": "entity name",
2601
- "type": "string"
2602
- },
2603
- "isDefault": {
2604
- "description": "Identifies that entity is defaultable",
2605
- "type": "boolean",
2606
- "default": false
2607
- },
2608
2788
  "metadata": {
2609
- "type": "object"
2789
+ "type": "object",
2790
+ "default": {},
2791
+ "anyOf": [
2792
+ {
2793
+ "$schema": "http://json-schema.org/draft-07/schema#",
2794
+ "title": "material metadata boundary conditions",
2795
+ "type": "object",
2796
+ "properties": {
2797
+ "boundaryConditions": {
2798
+ "type": "object",
2799
+ "required": [
2800
+ "type",
2801
+ "offset"
2802
+ ],
2803
+ "properties": {
2804
+ "type": {
2805
+ "type": "string",
2806
+ "enum": [
2807
+ "pbc",
2808
+ "bc1",
2809
+ "bc2",
2810
+ "bc3"
2811
+ ],
2812
+ "default": "pbc",
2813
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
2814
+ },
2815
+ "offset": {
2816
+ "type": "number"
2817
+ }
2818
+ }
2819
+ }
2820
+ },
2821
+ "additionalProperties": true
2822
+ },
2823
+ {
2824
+ "$schema": "http://json-schema.org/draft-07/schema#",
2825
+ "title": "material metadata slab properties",
2826
+ "type": "object",
2827
+ "properties": {
2828
+ "isSlab": {
2829
+ "description": "Whether the material was created as a surface slab",
2830
+ "type": "boolean"
2831
+ },
2832
+ "h": {
2833
+ "description": "Miller index h used to generate the slab",
2834
+ "type": "number"
2835
+ },
2836
+ "k": {
2837
+ "description": "Miller index k used to generate the slab",
2838
+ "type": "number"
2839
+ },
2840
+ "l": {
2841
+ "description": "Miller index l used to generate the slab",
2842
+ "type": "number"
2843
+ },
2844
+ "thickness": {
2845
+ "description": "Slab thickness in number of layers",
2846
+ "type": "number"
2847
+ },
2848
+ "vacuumRatio": {
2849
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
2850
+ "type": "number"
2851
+ },
2852
+ "vx": {
2853
+ "description": "Termination vector component along a",
2854
+ "type": "number"
2855
+ },
2856
+ "vy": {
2857
+ "description": "Termination vector component along b",
2858
+ "type": "number"
2859
+ }
2860
+ },
2861
+ "additionalProperties": true
2862
+ },
2863
+ {
2864
+ "$schema": "http://json-schema.org/draft-07/schema#",
2865
+ "title": "material metadata bulk properties",
2866
+ "type": "object",
2867
+ "properties": {
2868
+ "bulkId": {
2869
+ "description": "Source bulk material id used to generate the slab",
2870
+ "type": "string"
2871
+ }
2872
+ },
2873
+ "additionalProperties": true
2874
+ }
2875
+ ],
2876
+ "additionalProperties": true
2610
2877
  }
2611
2878
  }
2612
2879
  }
@@ -11,9 +11,37 @@
11
11
  "type": "object",
12
12
  "required": [
13
13
  "basis",
14
- "lattice"
14
+ "lattice",
15
+ "metadata",
16
+ "name"
15
17
  ],
18
+ "description": "Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).",
16
19
  "properties": {
20
+ "_id": {
21
+ "description": "entity identity",
22
+ "type": "string"
23
+ },
24
+ "slug": {
25
+ "description": "entity slug",
26
+ "type": "string"
27
+ },
28
+ "systemName": {
29
+ "type": "string"
30
+ },
31
+ "schemaVersion": {
32
+ "description": "entity's schema version. Used to distinct between different schemas.",
33
+ "type": "string",
34
+ "default": "2022.8.16"
35
+ },
36
+ "name": {
37
+ "description": "entity name",
38
+ "type": "string"
39
+ },
40
+ "isDefault": {
41
+ "description": "Identifies that entity is defaultable",
42
+ "type": "boolean",
43
+ "default": false
44
+ },
17
45
  "formula": {
18
46
  "description": "reduced chemical formula",
19
47
  "type": "string"
@@ -737,33 +765,95 @@
737
765
  }
738
766
  }
739
767
  },
740
- "_id": {
741
- "description": "entity identity",
742
- "type": "string"
743
- },
744
- "slug": {
745
- "description": "entity slug",
746
- "type": "string"
747
- },
748
- "systemName": {
749
- "type": "string"
750
- },
751
- "schemaVersion": {
752
- "description": "entity's schema version. Used to distinct between different schemas.",
753
- "type": "string",
754
- "default": "2022.8.16"
755
- },
756
- "name": {
757
- "description": "entity name",
758
- "type": "string"
759
- },
760
- "isDefault": {
761
- "description": "Identifies that entity is defaultable",
762
- "type": "boolean",
763
- "default": false
764
- },
765
768
  "metadata": {
766
- "type": "object"
769
+ "type": "object",
770
+ "default": {},
771
+ "anyOf": [
772
+ {
773
+ "$schema": "http://json-schema.org/draft-07/schema#",
774
+ "title": "material metadata boundary conditions",
775
+ "type": "object",
776
+ "properties": {
777
+ "boundaryConditions": {
778
+ "type": "object",
779
+ "required": [
780
+ "type",
781
+ "offset"
782
+ ],
783
+ "properties": {
784
+ "type": {
785
+ "type": "string",
786
+ "enum": [
787
+ "pbc",
788
+ "bc1",
789
+ "bc2",
790
+ "bc3"
791
+ ],
792
+ "default": "pbc",
793
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
794
+ },
795
+ "offset": {
796
+ "type": "number"
797
+ }
798
+ }
799
+ }
800
+ },
801
+ "additionalProperties": true
802
+ },
803
+ {
804
+ "$schema": "http://json-schema.org/draft-07/schema#",
805
+ "title": "material metadata slab properties",
806
+ "type": "object",
807
+ "properties": {
808
+ "isSlab": {
809
+ "description": "Whether the material was created as a surface slab",
810
+ "type": "boolean"
811
+ },
812
+ "h": {
813
+ "description": "Miller index h used to generate the slab",
814
+ "type": "number"
815
+ },
816
+ "k": {
817
+ "description": "Miller index k used to generate the slab",
818
+ "type": "number"
819
+ },
820
+ "l": {
821
+ "description": "Miller index l used to generate the slab",
822
+ "type": "number"
823
+ },
824
+ "thickness": {
825
+ "description": "Slab thickness in number of layers",
826
+ "type": "number"
827
+ },
828
+ "vacuumRatio": {
829
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
830
+ "type": "number"
831
+ },
832
+ "vx": {
833
+ "description": "Termination vector component along a",
834
+ "type": "number"
835
+ },
836
+ "vy": {
837
+ "description": "Termination vector component along b",
838
+ "type": "number"
839
+ }
840
+ },
841
+ "additionalProperties": true
842
+ },
843
+ {
844
+ "$schema": "http://json-schema.org/draft-07/schema#",
845
+ "title": "material metadata bulk properties",
846
+ "type": "object",
847
+ "properties": {
848
+ "bulkId": {
849
+ "description": "Source bulk material id used to generate the slab",
850
+ "type": "string"
851
+ }
852
+ },
853
+ "additionalProperties": true
854
+ }
855
+ ],
856
+ "additionalProperties": true
767
857
  }
768
858
  }
769
859
  },