@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
@@ -0,0 +1,131 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/io",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "data IO unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "subtype",
8
+ "source",
9
+ "input"
10
+ ],
11
+ "properties": {
12
+ "type": {
13
+ "const": "io"
14
+ },
15
+ "subtype": {
16
+ "enum": [
17
+ "input",
18
+ "output",
19
+ "dataFrame"
20
+ ]
21
+ },
22
+ "source": {
23
+ "enum": [
24
+ "api",
25
+ "object_storage"
26
+ ]
27
+ },
28
+ "input": {
29
+ "type": "array",
30
+ "items": {
31
+ "type": "object",
32
+ "oneOf": [
33
+ {
34
+ "$schema": "http://json-schema.org/draft-07/schema#",
35
+ "title": "data IO rest API input schema",
36
+ "type": "object",
37
+ "properties": {
38
+ "type": {
39
+ "type": "string",
40
+ "const": "api"
41
+ },
42
+ "endpoint": {
43
+ "description": "rest API endpoint",
44
+ "type": "string"
45
+ },
46
+ "endpoint_options": {
47
+ "description": "rest API endpoint options",
48
+ "type": "object"
49
+ },
50
+ "name": {
51
+ "description": "the name of the variable in local scope to save the data under",
52
+ "type": "string"
53
+ }
54
+ },
55
+ "required": [
56
+ "type",
57
+ "endpoint",
58
+ "endpoint_options"
59
+ ]
60
+ },
61
+ {
62
+ "$schema": "http://json-schema.org/draft-07/schema#",
63
+ "title": "object_storage io schema",
64
+ "type": "object",
65
+ "required": [
66
+ "type",
67
+ "objectData"
68
+ ],
69
+ "properties": {
70
+ "type": {
71
+ "type": "string",
72
+ "const": "object_storage"
73
+ },
74
+ "objectData": {
75
+ "$schema": "http://json-schema.org/draft-07/schema#",
76
+ "title": "Object Storage Container Data",
77
+ "type": "object",
78
+ "properties": {
79
+ "CONTAINER": {
80
+ "description": "Object storage container for the file",
81
+ "type": "string"
82
+ },
83
+ "NAME": {
84
+ "description": "Name of the file inside the object storage bucket",
85
+ "type": "string"
86
+ },
87
+ "PROVIDER": {
88
+ "description": "Object storage provider",
89
+ "type": "string"
90
+ },
91
+ "REGION": {
92
+ "description": "Region for the object container specified in Container",
93
+ "type": "string"
94
+ },
95
+ "SIZE": {
96
+ "description": "Size of the file in bytes",
97
+ "type": "integer"
98
+ },
99
+ "TIMESTAMP": {
100
+ "description": "Unix timestamp showing when the file was last modified",
101
+ "type": "string"
102
+ }
103
+ }
104
+ },
105
+ "overwrite": {
106
+ "description": "if a file with the same filename already exists, whether to overwrite the old file",
107
+ "type": "boolean"
108
+ },
109
+ "pathname": {
110
+ "description": "Relative path to the directory that contains the file.",
111
+ "type": "string"
112
+ },
113
+ "basename": {
114
+ "description": "Basename of the file",
115
+ "type": "string",
116
+ "$comment": "isGenerative:true"
117
+ },
118
+ "filetype": {
119
+ "description": "What kind of file this is, e.g. image / text",
120
+ "type": "string"
121
+ }
122
+ }
123
+ }
124
+ ],
125
+ "discriminator": {
126
+ "propertyName": "type"
127
+ }
128
+ }
129
+ }
130
+ }
131
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/map",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "map unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "input",
8
+ "workflowId"
9
+ ],
10
+ "properties": {
11
+ "type": {
12
+ "const": "map"
13
+ },
14
+ "workflowId": {
15
+ "description": "Id of workflow to run inside map",
16
+ "type": "string"
17
+ },
18
+ "input": {
19
+ "description": "Input information for map.",
20
+ "type": "object",
21
+ "required": [
22
+ "target"
23
+ ],
24
+ "properties": {
25
+ "target": {
26
+ "description": "Name of the target variable to substitute using the values below. e.g. K_POINTS",
27
+ "type": "string"
28
+ },
29
+ "scope": {
30
+ "description": "Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.",
31
+ "type": "string"
32
+ },
33
+ "name": {
34
+ "description": "Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.",
35
+ "type": "string"
36
+ },
37
+ "values": {
38
+ "description": "Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution",
39
+ "type": "array",
40
+ "items": {
41
+ "oneOf": [
42
+ {
43
+ "type": "string"
44
+ },
45
+ {
46
+ "type": "number"
47
+ },
48
+ {
49
+ "type": "object"
50
+ }
51
+ ]
52
+ }
53
+ },
54
+ "useValues": {
55
+ "type": "boolean"
56
+ }
57
+ }
58
+ }
59
+ }
60
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/processing",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "processing unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "operation",
8
+ "operationType",
9
+ "inputData"
10
+ ],
11
+ "properties": {
12
+ "type": {
13
+ "const": "processing"
14
+ },
15
+ "operation": {
16
+ "description": "Contains information about the operation used.",
17
+ "type": "string"
18
+ },
19
+ "operationType": {
20
+ "description": "Contains information about the specific type of the operation used.",
21
+ "type": "string"
22
+ },
23
+ "inputData": {
24
+ "description": "unit input (type to be specified by the child units)"
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/reduce",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "reduce unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "mapFlowchartId",
8
+ "input"
9
+ ],
10
+ "properties": {
11
+ "type": {
12
+ "const": "reduce"
13
+ },
14
+ "mapFlowchartId": {
15
+ "description": "corresponding map unit flowchart ID",
16
+ "type": "string"
17
+ },
18
+ "input": {
19
+ "description": "input information for reduce unit",
20
+ "type": "array",
21
+ "items": {
22
+ "type": "object",
23
+ "required": [
24
+ "operation",
25
+ "arguments"
26
+ ],
27
+ "properties": {
28
+ "operation": {
29
+ "description": "reduce operation, e.g. aggregate",
30
+ "type": "string"
31
+ },
32
+ "arguments": {
33
+ "description": "arguments which are passed to reduce operation function",
34
+ "type": "array",
35
+ "items": {
36
+ "type": "string"
37
+ }
38
+ }
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/subworkflow",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "subworkflow unit mixin schema",
5
+ "type": "object",
6
+ "properties": {
7
+ "type": {
8
+ "const": "subworkflow"
9
+ }
10
+ }
11
+ }
@@ -7,84 +7,18 @@
7
7
  "flowchartId",
8
8
  "input",
9
9
  "mapFlowchartId",
10
+ "monitors",
11
+ "name",
12
+ "postProcessors",
13
+ "preProcessors",
14
+ "results",
10
15
  "type"
11
16
  ],
12
- "additionalProperties": true,
13
17
  "properties": {
14
- "type": {
15
- "const": "reduce",
16
- "description": "type of the unit",
17
- "type": "string"
18
- },
19
- "mapFlowchartId": {
20
- "description": "corresponding map unit flowchart ID",
21
- "type": "string"
22
- },
23
- "input": {
24
- "description": "input information for reduce unit",
25
- "type": "array",
26
- "items": {
27
- "type": "object",
28
- "required": [
29
- "operation",
30
- "arguments"
31
- ],
32
- "properties": {
33
- "operation": {
34
- "description": "reduce operation, e.g. aggregate",
35
- "type": "string"
36
- },
37
- "arguments": {
38
- "description": "arguments which are passed to reduce operation function",
39
- "type": "array",
40
- "items": {
41
- "type": "string"
42
- }
43
- }
44
- }
45
- }
46
- },
47
18
  "_id": {
48
- "type": "string",
49
- "description": "entity identity"
50
- },
51
- "isDraft": {
52
- "type": "boolean"
53
- },
54
- "name": {
55
- "description": "name of the unit. e.g. pw_scf",
56
- "type": "string"
57
- },
58
- "status": {
59
- "description": "Status of the unit.",
60
- "type": "string",
61
- "enum": [
62
- "idle",
63
- "active",
64
- "warning",
65
- "error",
66
- "finished"
67
- ]
68
- },
69
- "head": {
70
- "description": "Whether this unit is the first one to be executed.",
71
- "type": "boolean"
72
- },
73
- "flowchartId": {
74
- "description": "Identity of the unit in the workflow. Used to trace the execution flow of the workflow.",
19
+ "description": "entity identity",
75
20
  "type": "string"
76
21
  },
77
- "next": {
78
- "description": "Next unit's flowchartId. If empty, the current unit is the last.",
79
- "type": "string"
80
- },
81
- "enableRender": {
82
- "description": "Whether Rupy should attempt to use Jinja templating to add context variables into the unit",
83
- "type": "boolean"
84
- },
85
- "context": {
86
- "type": "object"
87
- },
88
22
  "slug": {
89
23
  "description": "entity slug",
90
24
  "type": "string"
@@ -97,6 +31,10 @@
97
31
  "type": "string",
98
32
  "default": "2022.8.16"
99
33
  },
34
+ "name": {
35
+ "description": "entity name",
36
+ "type": "string"
37
+ },
100
38
  "isDefault": {
101
39
  "description": "Identifies that entity is defaultable",
102
40
  "type": "boolean",
@@ -107,30 +45,19 @@
107
45
  "type": "array",
108
46
  "items": {
109
47
  "$schema": "http://json-schema.org/draft-07/schema#",
110
- "title": "runtime item schema",
111
- "oneOf": [
112
- {
113
- "$schema": "http://json-schema.org/draft-07/schema#",
114
- "title": "name result schema",
115
- "type": "object",
116
- "properties": {
117
- "name": {
118
- "description": "The name of this item. e.g. scf_accuracy",
119
- "type": "string"
120
- }
121
- },
122
- "additionalProperties": true,
123
- "required": [
124
- "name"
125
- ]
126
- },
127
- {
128
- "$schema": "http://json-schema.org/draft-07/schema#",
129
- "title": "RuntimeItemString",
130
- "description": "name of runtime item in shortened notation",
48
+ "title": "runtime item name object schema",
49
+ "description": "A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.",
50
+ "type": "object",
51
+ "required": [
52
+ "name"
53
+ ],
54
+ "additionalProperties": true,
55
+ "properties": {
56
+ "name": {
57
+ "description": "The name of this item. e.g. scf_accuracy",
131
58
  "type": "string"
132
59
  }
133
- ]
60
+ }
134
61
  }
135
62
  },
136
63
  "postProcessors": {
@@ -138,30 +65,19 @@
138
65
  "type": "array",
139
66
  "items": {
140
67
  "$schema": "http://json-schema.org/draft-07/schema#",
141
- "title": "runtime item schema",
142
- "oneOf": [
143
- {
144
- "$schema": "http://json-schema.org/draft-07/schema#",
145
- "title": "name result schema",
146
- "type": "object",
147
- "properties": {
148
- "name": {
149
- "description": "The name of this item. e.g. scf_accuracy",
150
- "type": "string"
151
- }
152
- },
153
- "additionalProperties": true,
154
- "required": [
155
- "name"
156
- ]
157
- },
158
- {
159
- "$schema": "http://json-schema.org/draft-07/schema#",
160
- "title": "RuntimeItemString",
161
- "description": "name of runtime item in shortened notation",
68
+ "title": "runtime item name object schema",
69
+ "description": "A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.",
70
+ "type": "object",
71
+ "required": [
72
+ "name"
73
+ ],
74
+ "additionalProperties": true,
75
+ "properties": {
76
+ "name": {
77
+ "description": "The name of this item. e.g. scf_accuracy",
162
78
  "type": "string"
163
79
  }
164
- ]
80
+ }
165
81
  }
166
82
  },
167
83
  "monitors": {
@@ -169,30 +85,19 @@
169
85
  "type": "array",
170
86
  "items": {
171
87
  "$schema": "http://json-schema.org/draft-07/schema#",
172
- "title": "runtime item schema",
173
- "oneOf": [
174
- {
175
- "$schema": "http://json-schema.org/draft-07/schema#",
176
- "title": "name result schema",
177
- "type": "object",
178
- "properties": {
179
- "name": {
180
- "description": "The name of this item. e.g. scf_accuracy",
181
- "type": "string"
182
- }
183
- },
184
- "additionalProperties": true,
185
- "required": [
186
- "name"
187
- ]
188
- },
189
- {
190
- "$schema": "http://json-schema.org/draft-07/schema#",
191
- "title": "RuntimeItemString",
192
- "description": "name of runtime item in shortened notation",
88
+ "title": "runtime item name object schema",
89
+ "description": "A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.",
90
+ "type": "object",
91
+ "required": [
92
+ "name"
93
+ ],
94
+ "additionalProperties": true,
95
+ "properties": {
96
+ "name": {
97
+ "description": "The name of this item. e.g. scf_accuracy",
193
98
  "type": "string"
194
99
  }
195
- ]
100
+ }
196
101
  }
197
102
  },
198
103
  "results": {
@@ -200,30 +105,19 @@
200
105
  "type": "array",
201
106
  "items": {
202
107
  "$schema": "http://json-schema.org/draft-07/schema#",
203
- "title": "runtime item schema",
204
- "oneOf": [
205
- {
206
- "$schema": "http://json-schema.org/draft-07/schema#",
207
- "title": "name result schema",
208
- "type": "object",
209
- "properties": {
210
- "name": {
211
- "description": "The name of this item. e.g. scf_accuracy",
212
- "type": "string"
213
- }
214
- },
215
- "additionalProperties": true,
216
- "required": [
217
- "name"
218
- ]
219
- },
220
- {
221
- "$schema": "http://json-schema.org/draft-07/schema#",
222
- "title": "RuntimeItemString",
223
- "description": "name of runtime item in shortened notation",
108
+ "title": "runtime item name object schema",
109
+ "description": "A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.",
110
+ "type": "object",
111
+ "required": [
112
+ "name"
113
+ ],
114
+ "additionalProperties": true,
115
+ "properties": {
116
+ "name": {
117
+ "description": "The name of this item. e.g. scf_accuracy",
224
118
  "type": "string"
225
119
  }
226
- ]
120
+ }
227
121
  }
228
122
  },
229
123
  "tags": {
@@ -233,6 +127,17 @@
233
127
  "type": "string"
234
128
  }
235
129
  },
130
+ "status": {
131
+ "type": "string",
132
+ "description": "Status of the unit.",
133
+ "enum": [
134
+ "idle",
135
+ "active",
136
+ "warning",
137
+ "error",
138
+ "finished"
139
+ ]
140
+ },
236
141
  "statusTrack": {
237
142
  "type": "array",
238
143
  "items": {
@@ -253,6 +158,58 @@
253
158
  }
254
159
  }
255
160
  }
161
+ },
162
+ "isDraft": {
163
+ "type": "boolean"
164
+ },
165
+ "type": {
166
+ "description": "type of the unit",
167
+ "type": "string",
168
+ "const": "reduce"
169
+ },
170
+ "head": {
171
+ "description": "Whether this unit is the first one to be executed.",
172
+ "type": "boolean"
173
+ },
174
+ "flowchartId": {
175
+ "description": "Identity of the unit in the workflow. Used to trace the execution flow of the workflow.",
176
+ "type": "string"
177
+ },
178
+ "next": {
179
+ "description": "Next unit's flowchartId. If empty, the current unit is the last.",
180
+ "type": "string"
181
+ },
182
+ "enableRender": {
183
+ "description": "Whether Rupy should attempt to use Jinja templating to add context variables into the unit",
184
+ "type": "boolean"
185
+ },
186
+ "mapFlowchartId": {
187
+ "description": "corresponding map unit flowchart ID",
188
+ "type": "string"
189
+ },
190
+ "input": {
191
+ "description": "input information for reduce unit",
192
+ "type": "array",
193
+ "items": {
194
+ "type": "object",
195
+ "required": [
196
+ "operation",
197
+ "arguments"
198
+ ],
199
+ "properties": {
200
+ "operation": {
201
+ "description": "reduce operation, e.g. aggregate",
202
+ "type": "string"
203
+ },
204
+ "arguments": {
205
+ "description": "arguments which are passed to reduce operation function",
206
+ "type": "array",
207
+ "items": {
208
+ "type": "string"
209
+ }
210
+ }
211
+ }
212
+ }
256
213
  }
257
214
  }
258
215
  }