@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
@@ -250,9 +250,36 @@
250
250
  "type": "object",
251
251
  "required": [
252
252
  "basis",
253
- "lattice"
253
+ "lattice",
254
+ "metadata",
255
+ "name"
254
256
  ],
255
257
  "properties": {
258
+ "_id": {
259
+ "description": "entity identity",
260
+ "type": "string"
261
+ },
262
+ "slug": {
263
+ "description": "entity slug",
264
+ "type": "string"
265
+ },
266
+ "systemName": {
267
+ "type": "string"
268
+ },
269
+ "schemaVersion": {
270
+ "description": "entity's schema version. Used to distinct between different schemas.",
271
+ "type": "string",
272
+ "default": "2022.8.16"
273
+ },
274
+ "name": {
275
+ "description": "entity name",
276
+ "type": "string"
277
+ },
278
+ "isDefault": {
279
+ "description": "Identifies that entity is defaultable",
280
+ "type": "boolean",
281
+ "default": false
282
+ },
256
283
  "formula": {
257
284
  "description": "reduced chemical formula",
258
285
  "type": "string"
@@ -976,33 +1003,95 @@
976
1003
  }
977
1004
  }
978
1005
  },
979
- "_id": {
980
- "description": "entity identity",
981
- "type": "string"
982
- },
983
- "slug": {
984
- "description": "entity slug",
985
- "type": "string"
986
- },
987
- "systemName": {
988
- "type": "string"
989
- },
990
- "schemaVersion": {
991
- "description": "entity's schema version. Used to distinct between different schemas.",
992
- "type": "string",
993
- "default": "2022.8.16"
994
- },
995
- "name": {
996
- "description": "entity name",
997
- "type": "string"
998
- },
999
- "isDefault": {
1000
- "description": "Identifies that entity is defaultable",
1001
- "type": "boolean",
1002
- "default": false
1003
- },
1004
1006
  "metadata": {
1005
- "type": "object"
1007
+ "type": "object",
1008
+ "default": {},
1009
+ "anyOf": [
1010
+ {
1011
+ "$schema": "http://json-schema.org/draft-07/schema#",
1012
+ "title": "material metadata boundary conditions",
1013
+ "type": "object",
1014
+ "properties": {
1015
+ "boundaryConditions": {
1016
+ "type": "object",
1017
+ "required": [
1018
+ "type",
1019
+ "offset"
1020
+ ],
1021
+ "properties": {
1022
+ "type": {
1023
+ "type": "string",
1024
+ "enum": [
1025
+ "pbc",
1026
+ "bc1",
1027
+ "bc2",
1028
+ "bc3"
1029
+ ],
1030
+ "default": "pbc",
1031
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
1032
+ },
1033
+ "offset": {
1034
+ "type": "number"
1035
+ }
1036
+ }
1037
+ }
1038
+ },
1039
+ "additionalProperties": true
1040
+ },
1041
+ {
1042
+ "$schema": "http://json-schema.org/draft-07/schema#",
1043
+ "title": "material metadata slab properties",
1044
+ "type": "object",
1045
+ "properties": {
1046
+ "isSlab": {
1047
+ "description": "Whether the material was created as a surface slab",
1048
+ "type": "boolean"
1049
+ },
1050
+ "h": {
1051
+ "description": "Miller index h used to generate the slab",
1052
+ "type": "number"
1053
+ },
1054
+ "k": {
1055
+ "description": "Miller index k used to generate the slab",
1056
+ "type": "number"
1057
+ },
1058
+ "l": {
1059
+ "description": "Miller index l used to generate the slab",
1060
+ "type": "number"
1061
+ },
1062
+ "thickness": {
1063
+ "description": "Slab thickness in number of layers",
1064
+ "type": "number"
1065
+ },
1066
+ "vacuumRatio": {
1067
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
1068
+ "type": "number"
1069
+ },
1070
+ "vx": {
1071
+ "description": "Termination vector component along a",
1072
+ "type": "number"
1073
+ },
1074
+ "vy": {
1075
+ "description": "Termination vector component along b",
1076
+ "type": "number"
1077
+ }
1078
+ },
1079
+ "additionalProperties": true
1080
+ },
1081
+ {
1082
+ "$schema": "http://json-schema.org/draft-07/schema#",
1083
+ "title": "material metadata bulk properties",
1084
+ "type": "object",
1085
+ "properties": {
1086
+ "bulkId": {
1087
+ "description": "Source bulk material id used to generate the slab",
1088
+ "type": "string"
1089
+ }
1090
+ },
1091
+ "additionalProperties": true
1092
+ }
1093
+ ],
1094
+ "additionalProperties": true
1006
1095
  }
1007
1096
  }
1008
1097
  },
@@ -1048,9 +1137,36 @@
1048
1137
  "type": "object",
1049
1138
  "required": [
1050
1139
  "basis",
1051
- "lattice"
1140
+ "lattice",
1141
+ "metadata",
1142
+ "name"
1052
1143
  ],
1053
1144
  "properties": {
1145
+ "_id": {
1146
+ "description": "entity identity",
1147
+ "type": "string"
1148
+ },
1149
+ "slug": {
1150
+ "description": "entity slug",
1151
+ "type": "string"
1152
+ },
1153
+ "systemName": {
1154
+ "type": "string"
1155
+ },
1156
+ "schemaVersion": {
1157
+ "description": "entity's schema version. Used to distinct between different schemas.",
1158
+ "type": "string",
1159
+ "default": "2022.8.16"
1160
+ },
1161
+ "name": {
1162
+ "description": "entity name",
1163
+ "type": "string"
1164
+ },
1165
+ "isDefault": {
1166
+ "description": "Identifies that entity is defaultable",
1167
+ "type": "boolean",
1168
+ "default": false
1169
+ },
1054
1170
  "formula": {
1055
1171
  "description": "reduced chemical formula",
1056
1172
  "type": "string"
@@ -1774,33 +1890,95 @@
1774
1890
  }
1775
1891
  }
1776
1892
  },
1777
- "_id": {
1778
- "description": "entity identity",
1779
- "type": "string"
1780
- },
1781
- "slug": {
1782
- "description": "entity slug",
1783
- "type": "string"
1784
- },
1785
- "systemName": {
1786
- "type": "string"
1787
- },
1788
- "schemaVersion": {
1789
- "description": "entity's schema version. Used to distinct between different schemas.",
1790
- "type": "string",
1791
- "default": "2022.8.16"
1792
- },
1793
- "name": {
1794
- "description": "entity name",
1795
- "type": "string"
1796
- },
1797
- "isDefault": {
1798
- "description": "Identifies that entity is defaultable",
1799
- "type": "boolean",
1800
- "default": false
1801
- },
1802
1893
  "metadata": {
1803
- "type": "object"
1894
+ "type": "object",
1895
+ "default": {},
1896
+ "anyOf": [
1897
+ {
1898
+ "$schema": "http://json-schema.org/draft-07/schema#",
1899
+ "title": "material metadata boundary conditions",
1900
+ "type": "object",
1901
+ "properties": {
1902
+ "boundaryConditions": {
1903
+ "type": "object",
1904
+ "required": [
1905
+ "type",
1906
+ "offset"
1907
+ ],
1908
+ "properties": {
1909
+ "type": {
1910
+ "type": "string",
1911
+ "enum": [
1912
+ "pbc",
1913
+ "bc1",
1914
+ "bc2",
1915
+ "bc3"
1916
+ ],
1917
+ "default": "pbc",
1918
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
1919
+ },
1920
+ "offset": {
1921
+ "type": "number"
1922
+ }
1923
+ }
1924
+ }
1925
+ },
1926
+ "additionalProperties": true
1927
+ },
1928
+ {
1929
+ "$schema": "http://json-schema.org/draft-07/schema#",
1930
+ "title": "material metadata slab properties",
1931
+ "type": "object",
1932
+ "properties": {
1933
+ "isSlab": {
1934
+ "description": "Whether the material was created as a surface slab",
1935
+ "type": "boolean"
1936
+ },
1937
+ "h": {
1938
+ "description": "Miller index h used to generate the slab",
1939
+ "type": "number"
1940
+ },
1941
+ "k": {
1942
+ "description": "Miller index k used to generate the slab",
1943
+ "type": "number"
1944
+ },
1945
+ "l": {
1946
+ "description": "Miller index l used to generate the slab",
1947
+ "type": "number"
1948
+ },
1949
+ "thickness": {
1950
+ "description": "Slab thickness in number of layers",
1951
+ "type": "number"
1952
+ },
1953
+ "vacuumRatio": {
1954
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
1955
+ "type": "number"
1956
+ },
1957
+ "vx": {
1958
+ "description": "Termination vector component along a",
1959
+ "type": "number"
1960
+ },
1961
+ "vy": {
1962
+ "description": "Termination vector component along b",
1963
+ "type": "number"
1964
+ }
1965
+ },
1966
+ "additionalProperties": true
1967
+ },
1968
+ {
1969
+ "$schema": "http://json-schema.org/draft-07/schema#",
1970
+ "title": "material metadata bulk properties",
1971
+ "type": "object",
1972
+ "properties": {
1973
+ "bulkId": {
1974
+ "description": "Source bulk material id used to generate the slab",
1975
+ "type": "string"
1976
+ }
1977
+ },
1978
+ "additionalProperties": true
1979
+ }
1980
+ ],
1981
+ "additionalProperties": true
1804
1982
  }
1805
1983
  }
1806
1984
  }
@@ -21,9 +21,37 @@
21
21
  "type": "object",
22
22
  "required": [
23
23
  "basis",
24
- "lattice"
24
+ "lattice",
25
+ "metadata",
26
+ "name"
25
27
  ],
28
+ "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).",
26
29
  "properties": {
30
+ "_id": {
31
+ "description": "entity identity",
32
+ "type": "string"
33
+ },
34
+ "slug": {
35
+ "description": "entity slug",
36
+ "type": "string"
37
+ },
38
+ "systemName": {
39
+ "type": "string"
40
+ },
41
+ "schemaVersion": {
42
+ "description": "entity's schema version. Used to distinct between different schemas.",
43
+ "type": "string",
44
+ "default": "2022.8.16"
45
+ },
46
+ "name": {
47
+ "description": "entity name",
48
+ "type": "string"
49
+ },
50
+ "isDefault": {
51
+ "description": "Identifies that entity is defaultable",
52
+ "type": "boolean",
53
+ "default": false
54
+ },
27
55
  "formula": {
28
56
  "description": "reduced chemical formula",
29
57
  "type": "string"
@@ -747,33 +775,95 @@
747
775
  }
748
776
  }
749
777
  },
750
- "_id": {
751
- "description": "entity identity",
752
- "type": "string"
753
- },
754
- "slug": {
755
- "description": "entity slug",
756
- "type": "string"
757
- },
758
- "systemName": {
759
- "type": "string"
760
- },
761
- "schemaVersion": {
762
- "description": "entity's schema version. Used to distinct between different schemas.",
763
- "type": "string",
764
- "default": "2022.8.16"
765
- },
766
- "name": {
767
- "description": "entity name",
768
- "type": "string"
769
- },
770
- "isDefault": {
771
- "description": "Identifies that entity is defaultable",
772
- "type": "boolean",
773
- "default": false
774
- },
775
778
  "metadata": {
776
- "type": "object"
779
+ "type": "object",
780
+ "default": {},
781
+ "anyOf": [
782
+ {
783
+ "$schema": "http://json-schema.org/draft-07/schema#",
784
+ "title": "material metadata boundary conditions",
785
+ "type": "object",
786
+ "properties": {
787
+ "boundaryConditions": {
788
+ "type": "object",
789
+ "required": [
790
+ "type",
791
+ "offset"
792
+ ],
793
+ "properties": {
794
+ "type": {
795
+ "type": "string",
796
+ "enum": [
797
+ "pbc",
798
+ "bc1",
799
+ "bc2",
800
+ "bc3"
801
+ ],
802
+ "default": "pbc",
803
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
804
+ },
805
+ "offset": {
806
+ "type": "number"
807
+ }
808
+ }
809
+ }
810
+ },
811
+ "additionalProperties": true
812
+ },
813
+ {
814
+ "$schema": "http://json-schema.org/draft-07/schema#",
815
+ "title": "material metadata slab properties",
816
+ "type": "object",
817
+ "properties": {
818
+ "isSlab": {
819
+ "description": "Whether the material was created as a surface slab",
820
+ "type": "boolean"
821
+ },
822
+ "h": {
823
+ "description": "Miller index h used to generate the slab",
824
+ "type": "number"
825
+ },
826
+ "k": {
827
+ "description": "Miller index k used to generate the slab",
828
+ "type": "number"
829
+ },
830
+ "l": {
831
+ "description": "Miller index l used to generate the slab",
832
+ "type": "number"
833
+ },
834
+ "thickness": {
835
+ "description": "Slab thickness in number of layers",
836
+ "type": "number"
837
+ },
838
+ "vacuumRatio": {
839
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
840
+ "type": "number"
841
+ },
842
+ "vx": {
843
+ "description": "Termination vector component along a",
844
+ "type": "number"
845
+ },
846
+ "vy": {
847
+ "description": "Termination vector component along b",
848
+ "type": "number"
849
+ }
850
+ },
851
+ "additionalProperties": true
852
+ },
853
+ {
854
+ "$schema": "http://json-schema.org/draft-07/schema#",
855
+ "title": "material metadata bulk properties",
856
+ "type": "object",
857
+ "properties": {
858
+ "bulkId": {
859
+ "description": "Source bulk material id used to generate the slab",
860
+ "type": "string"
861
+ }
862
+ },
863
+ "additionalProperties": true
864
+ }
865
+ ],
866
+ "additionalProperties": true
777
867
  }
778
868
  }
779
869
  },
@@ -795,9 +885,36 @@
795
885
  "type": "object",
796
886
  "required": [
797
887
  "basis",
798
- "lattice"
888
+ "lattice",
889
+ "metadata",
890
+ "name"
799
891
  ],
800
892
  "properties": {
893
+ "_id": {
894
+ "description": "entity identity",
895
+ "type": "string"
896
+ },
897
+ "slug": {
898
+ "description": "entity slug",
899
+ "type": "string"
900
+ },
901
+ "systemName": {
902
+ "type": "string"
903
+ },
904
+ "schemaVersion": {
905
+ "description": "entity's schema version. Used to distinct between different schemas.",
906
+ "type": "string",
907
+ "default": "2022.8.16"
908
+ },
909
+ "name": {
910
+ "description": "entity name",
911
+ "type": "string"
912
+ },
913
+ "isDefault": {
914
+ "description": "Identifies that entity is defaultable",
915
+ "type": "boolean",
916
+ "default": false
917
+ },
801
918
  "formula": {
802
919
  "description": "reduced chemical formula",
803
920
  "type": "string"
@@ -1521,33 +1638,95 @@
1521
1638
  }
1522
1639
  }
1523
1640
  },
1524
- "_id": {
1525
- "description": "entity identity",
1526
- "type": "string"
1527
- },
1528
- "slug": {
1529
- "description": "entity slug",
1530
- "type": "string"
1531
- },
1532
- "systemName": {
1533
- "type": "string"
1534
- },
1535
- "schemaVersion": {
1536
- "description": "entity's schema version. Used to distinct between different schemas.",
1537
- "type": "string",
1538
- "default": "2022.8.16"
1539
- },
1540
- "name": {
1541
- "description": "entity name",
1542
- "type": "string"
1543
- },
1544
- "isDefault": {
1545
- "description": "Identifies that entity is defaultable",
1546
- "type": "boolean",
1547
- "default": false
1548
- },
1549
1641
  "metadata": {
1550
- "type": "object"
1642
+ "type": "object",
1643
+ "default": {},
1644
+ "anyOf": [
1645
+ {
1646
+ "$schema": "http://json-schema.org/draft-07/schema#",
1647
+ "title": "material metadata boundary conditions",
1648
+ "type": "object",
1649
+ "properties": {
1650
+ "boundaryConditions": {
1651
+ "type": "object",
1652
+ "required": [
1653
+ "type",
1654
+ "offset"
1655
+ ],
1656
+ "properties": {
1657
+ "type": {
1658
+ "type": "string",
1659
+ "enum": [
1660
+ "pbc",
1661
+ "bc1",
1662
+ "bc2",
1663
+ "bc3"
1664
+ ],
1665
+ "default": "pbc",
1666
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
1667
+ },
1668
+ "offset": {
1669
+ "type": "number"
1670
+ }
1671
+ }
1672
+ }
1673
+ },
1674
+ "additionalProperties": true
1675
+ },
1676
+ {
1677
+ "$schema": "http://json-schema.org/draft-07/schema#",
1678
+ "title": "material metadata slab properties",
1679
+ "type": "object",
1680
+ "properties": {
1681
+ "isSlab": {
1682
+ "description": "Whether the material was created as a surface slab",
1683
+ "type": "boolean"
1684
+ },
1685
+ "h": {
1686
+ "description": "Miller index h used to generate the slab",
1687
+ "type": "number"
1688
+ },
1689
+ "k": {
1690
+ "description": "Miller index k used to generate the slab",
1691
+ "type": "number"
1692
+ },
1693
+ "l": {
1694
+ "description": "Miller index l used to generate the slab",
1695
+ "type": "number"
1696
+ },
1697
+ "thickness": {
1698
+ "description": "Slab thickness in number of layers",
1699
+ "type": "number"
1700
+ },
1701
+ "vacuumRatio": {
1702
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
1703
+ "type": "number"
1704
+ },
1705
+ "vx": {
1706
+ "description": "Termination vector component along a",
1707
+ "type": "number"
1708
+ },
1709
+ "vy": {
1710
+ "description": "Termination vector component along b",
1711
+ "type": "number"
1712
+ }
1713
+ },
1714
+ "additionalProperties": true
1715
+ },
1716
+ {
1717
+ "$schema": "http://json-schema.org/draft-07/schema#",
1718
+ "title": "material metadata bulk properties",
1719
+ "type": "object",
1720
+ "properties": {
1721
+ "bulkId": {
1722
+ "description": "Source bulk material id used to generate the slab",
1723
+ "type": "string"
1724
+ }
1725
+ },
1726
+ "additionalProperties": true
1727
+ }
1728
+ ],
1729
+ "additionalProperties": true
1551
1730
  }
1552
1731
  }
1553
1732
  },