@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
@@ -6,102 +6,19 @@
6
6
  "required": [
7
7
  "flowchartId",
8
8
  "input",
9
+ "monitors",
10
+ "name",
11
+ "postProcessors",
12
+ "preProcessors",
13
+ "results",
9
14
  "type",
10
15
  "workflowId"
11
16
  ],
12
- "additionalProperties": true,
13
17
  "properties": {
14
- "type": {
15
- "const": "map",
16
- "description": "type of the unit",
17
- "type": "string"
18
- },
19
- "workflowId": {
20
- "description": "Id of workflow to run inside map",
21
- "type": "string"
22
- },
23
- "input": {
24
- "description": "Input information for map.",
25
- "type": "object",
26
- "required": [
27
- "target"
28
- ],
29
- "properties": {
30
- "target": {
31
- "description": "Name of the target variable to substitute using the values below. e.g. K_POINTS",
32
- "type": "string"
33
- },
34
- "scope": {
35
- "description": "Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.",
36
- "type": "string"
37
- },
38
- "name": {
39
- "description": "Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.",
40
- "type": "string"
41
- },
42
- "values": {
43
- "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",
44
- "type": "array",
45
- "items": {
46
- "oneOf": [
47
- {
48
- "type": "string"
49
- },
50
- {
51
- "type": "number"
52
- },
53
- {
54
- "type": "object"
55
- }
56
- ]
57
- }
58
- },
59
- "useValues": {
60
- "type": "boolean"
61
- }
62
- }
63
- },
64
18
  "_id": {
65
- "type": "string",
66
- "description": "entity identity"
67
- },
68
- "isDraft": {
69
- "type": "boolean"
70
- },
71
- "name": {
72
- "description": "name of the unit. e.g. pw_scf",
73
- "type": "string"
74
- },
75
- "status": {
76
- "description": "Status of the unit.",
77
- "type": "string",
78
- "enum": [
79
- "idle",
80
- "active",
81
- "warning",
82
- "error",
83
- "finished"
84
- ]
85
- },
86
- "head": {
87
- "description": "Whether this unit is the first one to be executed.",
88
- "type": "boolean"
89
- },
90
- "flowchartId": {
91
- "description": "Identity of the unit in the workflow. Used to trace the execution flow of the workflow.",
92
- "type": "string"
93
- },
94
- "next": {
95
- "description": "Next unit's flowchartId. If empty, the current unit is the last.",
19
+ "description": "entity identity",
96
20
  "type": "string"
97
21
  },
98
- "enableRender": {
99
- "description": "Whether Rupy should attempt to use Jinja templating to add context variables into the unit",
100
- "type": "boolean"
101
- },
102
- "context": {
103
- "type": "object"
104
- },
105
22
  "slug": {
106
23
  "description": "entity slug",
107
24
  "type": "string"
@@ -114,6 +31,10 @@
114
31
  "type": "string",
115
32
  "default": "2022.8.16"
116
33
  },
34
+ "name": {
35
+ "description": "entity name",
36
+ "type": "string"
37
+ },
117
38
  "isDefault": {
118
39
  "description": "Identifies that entity is defaultable",
119
40
  "type": "boolean",
@@ -124,30 +45,19 @@
124
45
  "type": "array",
125
46
  "items": {
126
47
  "$schema": "http://json-schema.org/draft-07/schema#",
127
- "title": "runtime item schema",
128
- "oneOf": [
129
- {
130
- "$schema": "http://json-schema.org/draft-07/schema#",
131
- "title": "name result schema",
132
- "type": "object",
133
- "properties": {
134
- "name": {
135
- "description": "The name of this item. e.g. scf_accuracy",
136
- "type": "string"
137
- }
138
- },
139
- "additionalProperties": true,
140
- "required": [
141
- "name"
142
- ]
143
- },
144
- {
145
- "$schema": "http://json-schema.org/draft-07/schema#",
146
- "title": "RuntimeItemString",
147
- "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",
148
58
  "type": "string"
149
59
  }
150
- ]
60
+ }
151
61
  }
152
62
  },
153
63
  "postProcessors": {
@@ -155,30 +65,19 @@
155
65
  "type": "array",
156
66
  "items": {
157
67
  "$schema": "http://json-schema.org/draft-07/schema#",
158
- "title": "runtime item schema",
159
- "oneOf": [
160
- {
161
- "$schema": "http://json-schema.org/draft-07/schema#",
162
- "title": "name result schema",
163
- "type": "object",
164
- "properties": {
165
- "name": {
166
- "description": "The name of this item. e.g. scf_accuracy",
167
- "type": "string"
168
- }
169
- },
170
- "additionalProperties": true,
171
- "required": [
172
- "name"
173
- ]
174
- },
175
- {
176
- "$schema": "http://json-schema.org/draft-07/schema#",
177
- "title": "RuntimeItemString",
178
- "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",
179
78
  "type": "string"
180
79
  }
181
- ]
80
+ }
182
81
  }
183
82
  },
184
83
  "monitors": {
@@ -186,30 +85,19 @@
186
85
  "type": "array",
187
86
  "items": {
188
87
  "$schema": "http://json-schema.org/draft-07/schema#",
189
- "title": "runtime item schema",
190
- "oneOf": [
191
- {
192
- "$schema": "http://json-schema.org/draft-07/schema#",
193
- "title": "name result schema",
194
- "type": "object",
195
- "properties": {
196
- "name": {
197
- "description": "The name of this item. e.g. scf_accuracy",
198
- "type": "string"
199
- }
200
- },
201
- "additionalProperties": true,
202
- "required": [
203
- "name"
204
- ]
205
- },
206
- {
207
- "$schema": "http://json-schema.org/draft-07/schema#",
208
- "title": "RuntimeItemString",
209
- "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",
210
98
  "type": "string"
211
99
  }
212
- ]
100
+ }
213
101
  }
214
102
  },
215
103
  "results": {
@@ -217,30 +105,19 @@
217
105
  "type": "array",
218
106
  "items": {
219
107
  "$schema": "http://json-schema.org/draft-07/schema#",
220
- "title": "runtime item schema",
221
- "oneOf": [
222
- {
223
- "$schema": "http://json-schema.org/draft-07/schema#",
224
- "title": "name result schema",
225
- "type": "object",
226
- "properties": {
227
- "name": {
228
- "description": "The name of this item. e.g. scf_accuracy",
229
- "type": "string"
230
- }
231
- },
232
- "additionalProperties": true,
233
- "required": [
234
- "name"
235
- ]
236
- },
237
- {
238
- "$schema": "http://json-schema.org/draft-07/schema#",
239
- "title": "RuntimeItemString",
240
- "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",
241
118
  "type": "string"
242
119
  }
243
- ]
120
+ }
244
121
  }
245
122
  },
246
123
  "tags": {
@@ -250,6 +127,17 @@
250
127
  "type": "string"
251
128
  }
252
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
+ },
253
141
  "statusTrack": {
254
142
  "type": "array",
255
143
  "items": {
@@ -270,6 +158,75 @@
270
158
  }
271
159
  }
272
160
  }
161
+ },
162
+ "isDraft": {
163
+ "type": "boolean"
164
+ },
165
+ "type": {
166
+ "description": "type of the unit",
167
+ "type": "string",
168
+ "const": "map"
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
+ "workflowId": {
187
+ "description": "Id of workflow to run inside map",
188
+ "type": "string"
189
+ },
190
+ "input": {
191
+ "description": "Input information for map.",
192
+ "type": "object",
193
+ "required": [
194
+ "target"
195
+ ],
196
+ "properties": {
197
+ "target": {
198
+ "description": "Name of the target variable to substitute using the values below. e.g. K_POINTS",
199
+ "type": "string"
200
+ },
201
+ "scope": {
202
+ "description": "Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.",
203
+ "type": "string"
204
+ },
205
+ "name": {
206
+ "description": "Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.",
207
+ "type": "string"
208
+ },
209
+ "values": {
210
+ "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",
211
+ "type": "array",
212
+ "items": {
213
+ "oneOf": [
214
+ {
215
+ "type": "string"
216
+ },
217
+ {
218
+ "type": "number"
219
+ },
220
+ {
221
+ "type": "object"
222
+ }
223
+ ]
224
+ }
225
+ },
226
+ "useValues": {
227
+ "type": "boolean"
228
+ }
229
+ }
273
230
  }
274
231
  }
275
232
  }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/assertion",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "assertion unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "name",
8
+ "statement"
9
+ ],
10
+ "properties": {
11
+ "type": {
12
+ "const": "assertion"
13
+ },
14
+ "statement": {
15
+ "type": "string",
16
+ "description": "The statement to be evaluated"
17
+ },
18
+ "errorMessage": {
19
+ "type": "string",
20
+ "description": "The error message to be displayed if the assertion fails"
21
+ }
22
+ }
23
+ }
@@ -0,0 +1,57 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/assignment",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "assignment unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "name",
8
+ "operand",
9
+ "value"
10
+ ],
11
+ "properties": {
12
+ "type": {
13
+ "const": "assignment"
14
+ },
15
+ "input": {
16
+ "description": "Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.",
17
+ "type": "array",
18
+ "items": {
19
+ "$schema": "http://json-schema.org/draft-07/schema#",
20
+ "title": "workflow unit input schema",
21
+ "type": "object",
22
+ "required": [
23
+ "scope",
24
+ "name"
25
+ ],
26
+ "properties": {
27
+ "scope": {
28
+ "description": "Scope of the variable. e.g. 'global' or 'flowchart_id_2'",
29
+ "type": "string"
30
+ },
31
+ "name": {
32
+ "description": "Name of the input data. e.g. total_energy",
33
+ "type": "string"
34
+ }
35
+ }
36
+ }
37
+ },
38
+ "operand": {
39
+ "description": "Name of the global variable. e.g. 'x'",
40
+ "type": "string"
41
+ },
42
+ "value": {
43
+ "description": "Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)",
44
+ "oneOf": [
45
+ {
46
+ "type": "string"
47
+ },
48
+ {
49
+ "type": "boolean"
50
+ },
51
+ {
52
+ "type": "number"
53
+ }
54
+ ]
55
+ }
56
+ }
57
+ }
@@ -0,0 +1,50 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/base",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "workflow base unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "type",
8
+ "flowchartId"
9
+ ],
10
+ "properties": {
11
+ "isDraft": {
12
+ "type": "boolean"
13
+ },
14
+ "type": {
15
+ "description": "type of the unit",
16
+ "type": "string"
17
+ },
18
+ "name": {
19
+ "description": "name of the unit. e.g. pw_scf",
20
+ "type": "string"
21
+ },
22
+ "status": {
23
+ "description": "Status of the unit.",
24
+ "type": "string",
25
+ "enum": [
26
+ "idle",
27
+ "active",
28
+ "warning",
29
+ "error",
30
+ "finished"
31
+ ]
32
+ },
33
+ "head": {
34
+ "description": "Whether this unit is the first one to be executed.",
35
+ "type": "boolean"
36
+ },
37
+ "flowchartId": {
38
+ "description": "Identity of the unit in the workflow. Used to trace the execution flow of the workflow.",
39
+ "type": "string"
40
+ },
41
+ "next": {
42
+ "description": "Next unit's flowchartId. If empty, the current unit is the last.",
43
+ "type": "string"
44
+ },
45
+ "enableRender": {
46
+ "description": "Whether Rupy should attempt to use Jinja templating to add context variables into the unit",
47
+ "type": "boolean"
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,61 @@
1
+ {
2
+ "$id": "workflow/unit/mixins/condition",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "condition unit mixin schema",
5
+ "type": "object",
6
+ "required": [
7
+ "input",
8
+ "statement",
9
+ "then",
10
+ "else",
11
+ "maxOccurrences"
12
+ ],
13
+ "properties": {
14
+ "type": {
15
+ "const": "condition"
16
+ },
17
+ "input": {
18
+ "description": "Input information for condition.",
19
+ "type": "array",
20
+ "items": {
21
+ "$schema": "http://json-schema.org/draft-07/schema#",
22
+ "title": "workflow unit input schema",
23
+ "type": "object",
24
+ "required": [
25
+ "scope",
26
+ "name"
27
+ ],
28
+ "properties": {
29
+ "scope": {
30
+ "description": "Scope of the variable. e.g. 'global' or 'flowchart_id_2'",
31
+ "type": "string"
32
+ },
33
+ "name": {
34
+ "description": "Name of the input data. e.g. total_energy",
35
+ "type": "string"
36
+ }
37
+ }
38
+ }
39
+ },
40
+ "statement": {
41
+ "description": "Condition statement. e.g. 'abs(x-total_energy) < 1e-5'",
42
+ "type": "string"
43
+ },
44
+ "then": {
45
+ "description": "Flowchart ID reference for `then` part of the condition.",
46
+ "type": "string"
47
+ },
48
+ "else": {
49
+ "description": "Flowchart ID reference for `else` part of the condition.",
50
+ "type": "string"
51
+ },
52
+ "maxOccurrences": {
53
+ "description": "Maximum occurrence of the condition, usable for loops.",
54
+ "type": "integer"
55
+ },
56
+ "throwException": {
57
+ "description": "Throw exception on reaching to maximum occurence.",
58
+ "type": "boolean"
59
+ }
60
+ }
61
+ }